<?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='\
Веселенько.
только при переходе на закладку Таблица рекордов ошибку кажет. Ну нету у меня на диске с: папки temp, зато есть КаталогВременныхФайлов() 😉
теперь можно устраивать онлайн турнир, хто выше добежит 😀
автор, подскажи а как добавить флеш объект с данными на форму?, я добавляю, пишу путь в Movie, все работает только если по указанному пути находится флеш файл
(2) галку на embeded — что-то типа такого…
Прикольно))
Вот как завидую тем, кто находит время на подобное! Только у автора явно не хватает опыта с пиаром. «Подъем наверх» — это не название для такого. Скажем, если периодически случайным образом сделать появление некоей принцессы, дарящей аватару своим появлением сердечки, когда он к ней приближается и замирает (что должно быть делать сложно из-за агрессий со стороны супостатов), то игра сразу приобретет очень не плохой оттенок, даже цель, и можно уже играть многообещающими названиями. Например, «Рыцарь и принцесса», «Рыцарь башни», «Принцесса эльфов»… 😉
(5) нет, особо времени нет. просто решил использовать свою разработку 4-х летней давности в рамках платформы — было интересно посмотреть на сколько это вообще возможно. естественно о пиаре никаком и в мыслях не было…
Что-то так и не понял как начать игру!!!
«мечом» через о пишется
А какая платформа нужна? У меня пустую форму открывает.
(9) флеш плеера в системе нету… он должен быть установлен… любая 8.1 или 8.2 должна работать
Всегда было интересно сваять что-то подобное — прилепить флешку на форму в 1С. Вон, и аськину флешку с веб-клиента присобачили в 1С, и игрушку забахали. Это плюс. Ну и немного критики в бочку мёда:
В предложении «Ваша лояльность, вдохновит меня на нечто более совершенное :)» запятая лишняя.
зачетная игрулина, всегда восхищался игрушками под 1с, когда нить на пенсии тоже такую напишу
Сгодится прежде всего как пример интеграции ActiveX, и пример работы с Flash в 1С.
За это точно зарплату платят?
Не качал и не смотрел пока, но за игры всегда от меня +
очень оригинальный способ показать возможности совместного использования технологий — ActiveX-Flash, 1С и php. Хотя конечно у 1с хватает кучи своих разработок, и для веба, да и про игры забывать не будем, но автору респект за саму идею 🙂
Зачетная игрулина, осталось только баланс паправить чтоб качать
(12) Неправильно.
Игрушка написана на Flash.
В 1С просто обёртка для флэша.
(18) не совсем так, дело в том что есть определенная таблица рекордов именно в 1с, которая считывает данные оставленные флешем…
Супер штука! Спасибо!
Мегаигруля, знаю теперь, чем буду в разряжать мозги на работе x]
только там какие-то траблы с таблицей рекордов, тегами отображает, надо будет на досуге заглянуть во внутрь..
плюсег за реализацию x]
Спасибо! С удовольствием плюсую!!!
Прикольно! надо в свою конфигурацию включить))) пусть пользователи развлекаются)))
Это то , что мне будет полезно
Мммм круто… Ещё не видел игр на 1С))) Когда то пробывал написать программу в шахматы на 1С. Что то ничего серйозного не получилось)))
Вот это вещь!
Буду пользоваться время от времени. Когда разгребу толпы заказов.
Автору огромное спасибо за шикарного убийцу времени!
А моя демо-разработка полностью на 1Сhttp://infostart.ru/public/116204/ , но силами 1С реализовано только 10 кадров в секунду.
Тоже при переходе на закладку Таблица рекордов выдает ошибку
А так вполне нормальная игруха
Я долго смеялся… 😀 Прикольная задумка…
Порадовала. спс
Прикольно молодцы, продолжайте в том же духе!!!!
супер игрушечка
прикольненько, супер!
шото на ноуте под 7-ой виндой не работает, не запускается…
прикольно, когда надо отдохнуть самое то).
Ага, на работе в перерыве поиграть можно)))
Вот сегодня разместил из этой же серии:
(5) O-Planet, автор же сказал что все зависит от лояльности =)
дизайн к полноценным играм тоже разрабатывают не программисты, если не ошибаюсь
Автор молодец, прикольно, улыбнуло 🙂
Просто отвал башки!!! а то мы все бухгалтерия, бухгалтерия …
замечательная игруха,как их вообще на 1с клепают
ахаха))) прикольно
прикольная игруха
Прикольно!
Прикольная игра. Спасибо.
Установи так потом продажи на спад пойдут!)
А прикольно,
если мониторят пользователей , в плане какие программы работают,
все чики-чики , типа в 1С я работаю, а сам прыг-прыг )))
(53) igorsvet2011, Ага.. ручками прыг-прыг, ножками дрыг-дрыг!)))
Здравствуйте. Подскажите пожалуйста, как можно сохранить swf размещенный на форме обработки в файл ?
(потерял исходный файл swf, остался только тот который внутри обработки)
(55) увы, не помню))) там галочка с свойствах есть embeded есть… которая «вшивает» swf в обработку