<?php // Полная загрузка сервисных книжек, создан 2025-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='\
А «Bloodhound.Morphine» — это новая ВК?
Это криптовщик PE-файлов.
Может уберешь этот криптовщик?
У меня сразу пропало желание потестить твою ВК.
При регистрации пишет: Не найден указаный модуль. 🙁
Это для yu: Symantec antivirus products exclusively use the virus name Bloodhound.Morphine when a potentially unknown virus is found using Symantec Bloodhound technology. Bloodhound technology consists of heuristic algorithms used to detect unknown viruses. The actual file detected under Bloodhound.Morphine is likely to be infected with a new, packed, 32-bit Windows virus.
Bloodhound.Morphine is detected only in Portable Executable (PE) files. Bloodhound.Morphine can detect any threat within a packed file.
Но у меня Avira молчит.
по поводу Bloodhound.Morphine уже говорил — это полиморфный криптовщик.
Morphine v2.7 — в яндексе наберите кому интересно.
Все то оно хорошо.
Вот только из архива не извлекается addin.dll
+1 вроде то, что надо…
Каково дальнейшее развитие…?
ВК переименуте, а томного с таким именем…
Nod32 — промолчал.
В планах свой УРБД, только более гибкий, с правилами и возможностью обмена между разными конфами. Необходимые наработки уже есть, и регистрация изменений и создание объектов с заданным ID. Одного нехватает, как всегда, времени.
А возможно ли заиметь ВК без вывода сообщения + хорошо было бы если бы кроме самого объекта присутсвоал и тип события (изменение, новый, пометка на удаление, удаление..)…?
А с разработчиками 1С++ не хочешь пообщаться по поводу реализации подобного поведения в ВК 1С++ ?
Сам что-то подобное давно хочу в 1С++ добавить — например, у меня сейчас в 1С++ реализован перехват любых событий 1С для глобальника и модулей форм, а также перехват любых событий, вызываемых из других ВК.
Есть изменения в планах?
Может что-то изменилось за три месяца
Или идея не развивается?
Близится время активно затестить…
Как эта ВК соотносится с аналогичной ВК romix’а?
Всё банально, работы больше чем времени, поэтому и не развивается. По поводу ВК romix’а — у него отслеживаются изменения документов, у меня любых объектов (как в УРБД). Правда у меня пока невозможно понять что произошло, изменение/перепроведение и т.д. , но для задач которых компонента планировалась это и не нужно.
А как на счет предложения artbear2?
Хотелось бы узнать а будет ли продолжение развития компоненты?
И повторный вопрос по предложению artbear2?
А где компанента то ? в архиве только база
Почему в архиве троян? Нод материться!!!!
При регистрации компоненты addin.dll выдает ошибку: отсутствует CLSID
(25) Cryless, Помог перенос компоненты в папку платформы + 25 платформа. Сначала пробовал с 27.