<?php // Полная загрузка сервисных книжек, создан 2024-01-05 12:44:55
global $wpdb2;
global $failure;
global $file_hist;
///// echo '<H2><b>Старт загрузки</b></H2><br>';
$failure=FALSE;
//подключаемся к базе
$wpdb2 = include_once 'connection.php'; ; // подключаемся к MySQL
// если не удалось подключиться, и нужно оборвать PHP с сообщением об этой ошибке
if (!empty($wpdb2->error))
{
///// echo '<H2><b>Ошибка подключения к БД, завершение.</b></H2><br>';
$failure=TRUE;
wp_die( $wpdb2->error );
}
$m_size_file=0;
$m_mtime_file=0;
$m_comment='';
/////проверка существования файлов выгрузки из 1С
////файл выгрузки сервисных книжек
$file_hist = ABSPATH.'/_1c_alfa_exchange/AA_hist.csv';
if (!file_exists($file_hist))
{
///// echo '<H2><b>Файл обмена с сервисными книжками не существует.</b></H2><br>';
$m_comment='Файл обмена с сервисными книжками не существует';
$failure=TRUE;
}
/////инициируем таблицу лога
/////если не существует файла то возврат и ничего не делаем
if ($failure){
///включает защиту от SQL инъекций и данные можно передавать как есть, например: $_GET['foo']
///// echo '<H2><b>Попытка вставить запись в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>$m_comment));
wp_die();
///// echo '<H2><b>Возврат в начало.</b></H2><br>';
return $failure;
}
/////проверка лога загрузки, что бы не загружать тоже самое
$masiv_data_file=stat($file_hist); ////передаем в массив свойство файла
$m_size_file=$masiv_data_file[7]; ////получаем размер файла
$m_mtime_file=$masiv_data_file[9]; ////получаем дату модификации файла
////создаем запрос на получение последней удачной загрузки
////выбираем по штампу времени создания (редактирования) файла загрузки AA_hist.csv, $m_mtime_file
///// echo '<H2><b>Размер файла: '.$m_size_file.'</b></H2><br>';
///// echo '<H2><b>Штамп времени файла: '.$m_mtime_file.'</b></H2><br>';
///// echo '<H2><b>Формирование запроса на выборку из лога</b></H2><br>';
////препарируем запрос
$text_zaprosa=$wpdb2->prepare("SELECT * FROM `vin_logs` WHERE `last_mtime_upload` = %s", $m_mtime_file);
$results=$wpdb2->get_results($text_zaprosa);
if ($results)
{ foreach ( $results as $r)
{
////если штамп времени и размер файла совпадают, возврат
if (($r->last_mtime_upload==$m_mtime_file) && ($r->last_size_upload==$m_size_file))
{////echo '<H2><b>Возврат в начало, т.к. найдена запись в логе.</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>'Загрузка отменена, новых данных нет, т.к. найдена запись в логе.'));
wp_die();
return $failure;
}
}
}
////если данные новые, пишем в лог запись о начале загрузки
/////echo '<H2><b>Попытка вставить запись о начале загрузки в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>0, 'last_size_upload'=>$m_size_file, 'comment'=>'Начало загрузки'));
////очищаем таблицу
$clear_tbl_zap=$wpdb2->prepare("TRUNCATE TABLE %s", 'vin_history');
$clear_tbl_zap_repl=str_replace("'","`",$clear_tbl_zap);
$results=$wpdb2->query($clear_tbl_zap_repl);
///// echo '<H2><b>Очистка таблицы сервисных книжек</b></H2><br>';
if (empty($results))
{
///// echo '<H2><b>Ошибка очистки таблицы книжек, завершение.</b></H2><br>';
//// если очистка не удалась, возврат
$failure=TRUE;
wp_die();
return $failure;
}
////загружаем данные
$table='vin_history'; // Имя таблицы для импорта
//$file_hist Имя CSV файла, откуда берется информация // (путь от корня web-сервера)
$delim=';'; // Разделитель полей в CSV файле
$enclosed='"'; // Кавычки для содержимого полей
$escaped='\
по моему скромному мнению идея не плохая,но думаю,что не все пожелают показать свои личика,просто посмотрите какие есть аватары со смеху умереть,весь животный мир и не только…
Идея здравая.
Но в левой колоночке я бы не анкетные данные разрабов вывел, а кратенький список разработок, рандомный.
блин скрин так и не открылся….
(3) Список разработок лучше, ага. Основных у автора.
(1) это про меня? 🙂
(0) чьи лица будут на левой части? особо избранных?
(6) нет, тех кто 50 руб. заплатит :). Che будет висеть вечно, он готов аж 200 выложить
(7) И что получится из ресурса? Рекламная фирма?
(6)конечно,как я про тебя забуду..
думаю там должны висеть личики тех у кого на данный момент самые популярные разработки
(9) спасибо, милая 🙂
Самые популярные в каком смысле? Больше всех плюсиков собрали?
Или за последнее время? А вдруг там окажутся похожие разработки?
Типа 2-3 перенумератора 🙂
(6) // чьи лица будут на левой части? особо избранных?
Читать умеем? Или только комментировать? «… собираем галерею разработчиков … Ставим скрипт слайдшоу, который крутит фотки с некоторой периодичностью». Фотки у многих уже в профайле есть. Если у человека есть собственные разработки, их оценки (скажем, рейтинг от 30-и, и разработок более 3-х, но все обсуждается), то он — разработчик.
(10) Позиция в корне не верна. Перенумераторы <> плохие разработки. Стоит войти на страницу любого перенумератора и почитать комментарии. если люди их ищут, скачивают, используют и благодарят за это, то почему это — плохие разработки? То, что оно — не ВК, не требует Net-технологий или Formex? Для особо продвинутых можно сделать ВК-перенумератор, на Net, с окном запуска, оформленным с помощью Forex 🙂
(11) мы читать умеем, т.е. это я про себя
(0) > собираем галерею разработчиков
кто? по какому принципу?
В шапке только это написано. А не надо теперь говорить, что я должен был сам догадаться
Внеси имзенения в шапку
(13) Причем здесь это?
Ты читать умеешь или только писать?
А вдруг там окажутся ПОХОЖИЕ разработки?
ПОХОЖИЕ — вот ключевое слово
(12) Просто в шапке речи не шло вроде об избранности, если речь идет о сайте сообщества, то избранность тут не уместна. А принцип отбора сформулировать я не берусь. предложил в 11 то, что мне кажется правильным, но надо обсуждать.
(14) > если речь идет о сайте сообщества, то избранность тут не уместна
С этим согласен.
(15) Ну и пусть 🙂 От всего не защитишься. Знаешь, когда плохая прическа у блондинки бросается в глаза? Когда она ее поправляет каждую секунду.
Речь идет о платных разработках в магазине. Они УЖЕ там есть. Не знаю, имеются ли похожие, не смотрел. Но вот ты написал, и я загрузился 🙂
все-таки плюсование и кол-во скачиваний-это показатель надобности и качества разработки,думаю это и есть критерии отбора….
(17) Про блондинок это ты зря… Придет Торпедо и расстроицца 🙂
А вообще речь не об этом. А о (0)
Мне нравицца 🙂
(19) Вот незадача… Мде… Надо чо-нить срочно написать хорошее про блондинок, пока ее нет, или конструктивное предложить… Например, пункт меню «Если ты блондинко». Это чтобы сразу загружался Promt, когда она будет писать комментарии… :))
(0) А Душелов то,оказывается, блондин!! Так что вы поосторожнее с цветом волос и прическами, скоро пирсинг в ход пойдет!!))))
ох-рассмешили….
(21) Промт? А в него уже встроили блондинко-человеческий словарь? Вау!
(22) Есть разница между «блондин» и «блондинка» 🙂
Вася чел нормальный, не обидится, имхо.
(22) Вот только о пирсинге не надо….больная тема
(25) Смотря на что его делать )
(26)И не надо спрашивать где!
(27) А про татушки можно? 🙂
Где?
сказано же блондинкО ;))))
хтО? 🙂
(28)А давайте ближе к теме, срочненько убираем зоопарк и выкладываем фото что бы быть в передовиках,так сказать на первой полосе!!!
(29) к (24)
(24) // Промт? А в него уже встроили блондинко-человеческий словарь? Вау!
Не, тут проще все. Практика показывает, что достаточно перевести на английский, а потом снова на русский, чтобы можно было прочитать… 🙂
(31) ради это не стоит….
Если меня выберут в передовики — я приготовлю фоточку на Доску Почета 🙂
Мне нравится, только если фото, то разработчиков, т.е. мах число плюсований за разработки, все остальное не считать, статьи, форумы ит .д.
(35) эт -то точняк,юмор ит.д.
Ну как бы фото с тату могу найти, но как бы это не очень высокохудожественное фото будет 🙂
А вот пирсинг не уважаю — только проколотые уши у меня.
Ну да, я — блондинко 🙂
(35) вообще-то некоторые авторские статьи на Инфостарте достойны быть размещенными на диске ИТС…
(39) Как и разработки 😉
ИТС — это так уж пристижно?
Конечно! Предел стремления 🙂
(41) Олег, у тебя нет таких статей, имхо… 😉
и у меня нет…
но такие статьи (методические материалы) на инфостарте есть. Не хочу в них «тыкать пальцем», но думаю многие читали…
Насчет того — «престижно-ли?». имхо, престижно
общий подход, изложеный в (0) — мну нравится…
(0) А причем тут футбол?
(0) Я против.
Что мы видим на снимке?
Кучу места занимает реклама или девиз Инфостарта — не гуд.
Огромную кучу места занимает инфа о разработчиках, которая, я уверен, пользователям, да и др.разработчикам, нужна в последнюю очередь, только после изучения разработок.
В первую очередь нужна инфа все-таки о разработках, а как раз им и отведено очень мало места 🙁
Еще ведь есть не только разработки, но и методические статьи, которые также должны быть показаны.
В общем, не гуд 🙁
(46+) К вопросу о рейтингах — вот есть разработкаhttp://infostart.ru/projects/3215
Признаю, что неплохая, нужная и т.д. — сам воспользовался и плюсанул.
Но все это только на ближайшее время, до появления новой зарплаты.
Далее эта разработка совершенно будет не нужна 🙁
А на текущий момент у нее 206 баллов.
И что, она так и будет крутиться в списках лидеров??
(46) Информация о разработках, конечно, нужна. Но структурированная, а не в теперешнем виде. Сейчас к примеру, когда мне нужно что-то в конкретной области, я ищу это сначала у популярных авторов (популярных «среди меня», а не по рейтингу).
(0) Деление на пользователей и разработчиков назрело.
(46) Правильно!
(47) А я уже предлагал в расчетах рейтингов учитывать «срок давности».
(49) Срок давности чего? последнего обновления или даты создания?
(46) Нужно исходить из того, на какую целевую аудиторию направлен контент. ты написал с т.зр. программиста все совершенно правильно. Я говорю о потенциальном заказчике: бухгалтера, менеджеры, директора IT, руководители фирм. Для таковых важно показать, что здесь — сообщество специалистов, которому можно доверять, у которого есть большорй петенциал, а не тупой файлообменник. Лица разработчиков, список их работ (позиционируем, как некое достижение), возможность пообщаться — это тот контент, который лучше всего создаст атмосферу доверия и понимания, что тут не случайные люди. Страница ориентирована на привлечение заказчиков и покупателей. Это — всего лишь витрина, призванная привлечь внимание и создать первое впечатление.
(50) Хороший вопрос 🙂
Самое правильное — от даты каждого «плюсика», но это затратно.
Как-то можно оптимизировать. Например рассчитывать при «закрытии месяца», сколько плюсиков разработка получила в этом календарном месяце.
А потом считать по коэффициентам. За каждый месяц назад минус 5-10%.
Например, плюсование этого месяца Коэф=1.00, прошлого = 0.95(0.90), позапрошлого = 0.90(0.80).
И тогда «старые» забытые разработки перестанут оказывать влияние на рейтинг разработчика. И не будет класса «рантье», живущих за счет времен оно.
И будет им место в музее… Наша история…
(52) На, погляди, что такое старые и что такое новые
http://infostart.ru/projects/1878/
«Старые» не плюсуют во многом потому, что до них добраться не могут
Это плохо. Обновлять надо, развивать 🙂