<?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='\
Автор: DeFor aka Федор (fjedor###airserver.kz)
🙂
хехе
конкурент Альфу и его КЗК-2?!
А поясните, плиз
· Редактировать можно модули не превышающие по размеру 64 кб.
— 64 кб чистого текста?
…
Запуск программы осуществляется только с дискеты, что позволяет работать у клиента и не оставлять следов на чужом компьютере.
— с флешки как, работать будет?
каковы перспективы вскрытия закриптованного модуля?
думаю вполне подойдет для демоверсий
Отвечаю на вопросы:
1. Стабильно работает на больших MD (мной постоянно криптовалась моя конфигурациия md — 12Mb)
2. За все время работы (более 2-х лет) небыло проблем с расшифровкой.
3. Я думаю работать будет с любого носителя , которому можно выставить имя А: и задать метку тома. Впрочем я всегда пользовался дискетой (в данном случае это удобней чем флешка 🙂 )
Персонально для Альфа хочу подчеркнуть:
Я никоим образом не претендую на авторство, но так как изначально программа бесплатная и не комерческая, думаю у меня есть все основания разместить ее от себя (учитывая проведенное мною тестирование в теч. 2-х лет) пускай люди пользуються, ведь сейчас в защите конфигурации есть очень острая необходимость.
Немного о способе шифрования:
Шифруеться глобальный модуль, что при правильном использовании вполне достаточно.
После шифрования весь текст глобального модуля в зашифрованом веде переноситься в общие таблицы, поэтому для работы программы необходимо иметь хотябы одну общую таблицу.
Обращение к зашифрованому тексту модуля происходит через dll. Тоесть если ктото откроет глобальный модуль, то ничего конкретного там не найдет и не изменит. Методика работы программы чемто напоминает компилирование во «взрослых» языках.
Сколько стоит недемо?
«Не демо» -такой версии нет — программа полностью функциональна и полностью бесплатная.
Да?
а в описалове сказано что макс. для 2-х юзеров, и лицензию продлять можно только на месяц…
???
Зашифрованная таким способом конфигурация НОРМАЛЬНО работает и количество пользователей не важно. А если необходимо для демки выставить срок использования — то я пользуюсь средствами 1С — в глобальном модуле все прописываю (количество пользователей, на какой период работает) а потом шифрую
+ 1 чисто за поднятую тему. А когда еще и посмотрю, то и +10 рад буду поставить, если оно того стоит!
«…Шифруеться глобальный модуль, что при правильном использовании вполне достаточно.» Простите — Что значит при «правильном»? Очень актуально шифровать нароботки рассположенные в обработке (отчете). Шифровать глобальник можно в случае если сам же являешься разработчиком конфигурации — а это на много реже, чем адаптация существующей конфигурации, либо разработка на базе типовой. Таким образом исползование сужается до уровня подготовки демо-версий. Возможно есть вариант с шифрованием обработок?
согласен с Эффектором ! Нужно шифрование внешних обработок !
Шифрование ныне не в моде, коллеги 🙂
http://www.dorex.ru/?projects&kzk2
Вбил бы за дискету, где я ее найду?
Работает на любом диске с именем A: или B:, делал через SUBST
Вскрывается методами аналогичными методам вскрытия КЗК1
а на восьмёру тоже подойдёт?
огромное спасибо
Благодарю разаработчика и пока начал пользоваться
пока тока скачала, но верю, что работает, а посему +1
не понял посчет пароля (своего), где его ввести? открыл через susbst и оно потребовало пароль.
Аналогично! Что делать с паролем?
У меня b: метка work. Ввожу этот work — и оно не пашет
спасибо. попробую. просто без защиты и разрабатывать в лом. вот защищу. да продам кой чего, тогда и заплатить реально. и на кого кзк2 расчитан?
что-то она под 2003 сервером не айда… валиться
Попробовал, достаточно для поставки конфигураций заказчику без умных программистов рядом. Глобальник — это конечно здорово, но … Все-таки как насчет шифрования остальных модулей: справочников, документов, обработок, отчетов. И как получить не «This is copy demonstration !» А то сколько разработок по защите конфигурации не смотрел, такое впечатление что все программисты намеренно толкают в объятия АЛьФа с его КЗК-2! Эта шифрует только глобальник с 2 пользователями (у меня загрузилось 3, на третьем сообщила «You excess counting register users!» но продолжала работать), Golden Key O-Planet’а не хочет работать с FormEx и таблица значений заполняется медленно и т.д. А защищаться-то надо! Русский человек любит халяву и не хочет платить, а хочет копировать. Так что видимо прийдется покупать КЗК. Жалко, не нужна такая крутая защита, за столько денежек…
2(26) Если не нужна современная надежная защита, то можно купить защиту попроще:
http://www.dorex.ru/?projects&cpc
Работает со всеми модулями конфигурации, с внешними отчетами. И стоит копейки.
Хотя, с системой кредита и КЗК-2 вполне доступна по деньгим любому серьезному разработчику. ИМХО, конечно.
Ничего не покупаем. Смотрим направо вверх этой странички. Там написано: Golden Key… Для надежной защиты нужна версия, начиная от 1.105 😉
Прошу прощения у it.net’а за обсуждение не его приложения, но хочется ответить двум борцам за чистоту рядов програмных кодов 1С — O-Planet’у и АЛьФ’у. Ребята, куда не сунься, везде вы обсуждаете свои разработки, перечисляете все плюсы и минусы, занимаетесь саморекламой — даже здесь.
http://www.infostart.ru/projects/1337/ хотелось бы иметь что-то и недорогое и рабочее.
O-Planet’у: «Для надежной защиты нужна версия, начиная от 1.105» — да ты сначала ее выложи (на сайте Golden Key V1.104 lite), дай попробовать, а потом рекламируй. Говорю же в 104 версии: медленно заполняется таблица значений, определение — Процедура ХХХ() Далее — шифровальщик разбивает на две строки и вылазят синтаксические ошибки, нет ограничения по сроку работы, непонятно зачем указывать число запусков и количество документов — по барабану 1С это, запускает и запускает, открывает и открывает … вообщем абсолютно сырой продукт. «»Ничего не покупаем. Смотрим направо вверх этой странички» — поставь клиенту такую демку — он и спасибо тебе скажет и еще даст 4$ на такси.
АЛьФ’у: «Работает со всеми модулями конфигурации, с внешними отчетами. И стоит копейки». Во первых нельзя посмотреть -«Ограничения демонстрационной версии: лицензия формируется только на один день; документация ограничена файлом ReadMe.txt; компонента decoder.dll работоспособна только до 01.07.2007» — попробовал пишет «Истек срок лицензии». Во вторых, если речь идет о Lite — 50 «копеек» при функциональности «Lite — предназначена для создания демонстрационных версий и работы с конфигурациями, не требующими дальнейшего обновления или доработки» достаточно дорого, а Prof при 100 «копейках» — ну тогда уж лучше КЗК 2.0 Стандарт, все-таки не шифрование. «Хотя, с системой кредита и КЗК-2 вполне доступна по деньгим любому серьезному разработчику. ИМХО, конечно». Да не серьезные мы — так, погулять вышли! Серьезные сами себе защиту пишут. И «копейки» в размере 60-100 платим долго подумав, впрочим как и большинство Вас центровых. Насчет кредита, да из Белоруссии мы темные, как же Вам денежку то пересылать-то? После жарких баталий
Еще раз прошу прощения у it.net’а за лирическое отступление не по теме.
Афтар-то, как ни прискорбно, прав. Дорого КЗК-2 для мелкого разработчика. С другой стороны — если снизит Альф цену, то напокупает у него каждый второй — и абмец, найдется добрая душа и сломает. А ломаный он и даром не надо
2(30) Я тебе со всей ответственностью заявляю, что цена ни как не влияет на объем продаж. Для тех, кому 3750 — дорого, будет дорого и 50 рублей.
Для мелких же разработчиков специально придумали систему рассрочки.
А по поводу «сломает»… Не так-то это просто, как некоторым кажется. Что в очередной раз подтвердила недавняя публичная проверка стойкости КЗК-2 на Мисте.
2(29) Знаешь, у меня достаточно много клиентов из Белоруссии. Как-то они нашли пути для оплаты при желании.
Заходишь на сайт КЗК-2, открываешь страницу «Купить» и видишь кучу способов оплаты. Как для фирм, так и для физических лиц.
Так что извини, но все эти «дорого», «не знаю как оплатить» — это просто от того, что тебе на самом деле подобный инструмент не нужен.
(30)>Дорого КЗК-2 для мелкого разработчика
А зачем мелкому разработчику вообще что-то закрывать? Новый столбец в Счет-фактуре?
Или обработку переброски со счета на счет?
[29] За то нас и любят, что мы тут многих развлекаем 🙂 А по поводу ограничения — у меня все работает. Не знаю, о чем ты пишешь. Ну а с другой стороны, если у КЗК2 глюки начались, то мааааленькому «золотому ключику» оно должно быть простительно…
… а вообще, я, наверное, вымирающий вид, потому что горжусь тем (и это — правда), что за всю свою 1С-практику ни разу не имел счастья поставить лицензионную 1С кому-либо. Я, если честно, даже не умею этого…
2(31) «Для тех, кому 3750 — дорого, будет дорого и 50 рублей.»
Не скажи. Разница огромная.
Если мне нужно защитить продукт с которого я имею тыщу в месяц, то ради этого покупать КЗК за 3750 ?
Стоит ли возни ?
Если цена не влияет на объем продаж — дак поставь 100 000 :-))) Кому надо — купят 🙂
2(32) Ну не скажи, Аркадий ! Давай абстрактно:
Вот есть к примеру у кого-нить какой-нить отчет или обработка к типовой конфе, например.
Потрудился он над ним часов так несколько, немного, может 2, а может 5.
И считает что отчет этот полезен для общества. И чтоб другие не долбились те самые 2, а то и 5 часов — выложит он отчетик и назначить за него цену. Небольшую. Рублей пусть там 200 или 300. Чисто по справедливости.
Дак вот если этот отчет ни как не защитить — то афтор с него получит шиш. Ибо хочется всем ХАЛЯВЫ. А так скачает человек отчетик, поюзает, а отчетик скажет ему через неделю: извини, мил человек, амбец — нужен я тебе, плати автору. И если нужен, то заплатит. И будет капать разработчику копеечка. Ты вот, Аркадий, откажешься, если будет капать тебе копеечка ? Вряд ли. И скажу больше: это есть нормальная практика для разработчиков и называетеся шареварные продукты. К которым мы все бежим искать ключик. А вот если нет его — то либо забиваем, либо платим, если шибко надо. И чем распространенее шареварная вещь, тем больше найдется любителей её поломать.
А тут получается подумает автор, подумает: надо пойти значала ключик купить за 5000 руб, а потом когдааааа еще ентот ключик окупится. И болт. Не выложит ничего. Потому как не все у нас Опланеты и в востроге когда их трудом пользуются на халяву, за мифический рейтинг. Ему может и в кайф с Чебуратором рейтингами померится, а мне вот, например, в кайф когда бабосы на кармане есть.
С другой стороны хорошо что есть Опланет и ему подобные. Доведет от свой голден кей до кондиции. Халявным может и не сделает, но и пятерку не поставит. Да и автор этой вот разработки может подтянет её на уровень. Тогда глядишь ценничек-то и спадет. Конкуренция, однако. И так со всеми ведь разработками, в том числе и с отчетом, который я выше описал. Найдется альтруист — выложит на шару и поток копеечный иссякнет в карман автору, только вот деньга-то за ключик уже заплачена.
Вообще обсуждение на эту тему нужно выносить в отдельную ветвь на форум.
Тема намного шире чем просто защита и цены на неё.
Тема и о том как уберечся от альтруистов и желающих на шару поработать. Да и о многом другом
>откажешься, если будет капать тебе копеечка ?
По самым скромным подсчетам (с учетом проклаба) мой плагин к Тоталу юзает около 20 тыс. человек (минимум)
Уж его-то я мог защитить! Однако…
2(38
скачало — не значит юзает
а что ж не защитил-то ?
>а что ж не защитил-то ?
Да потому что фиг кто заплатит! Это я не знаю.
Мне вот шибко интересно КТО Кристиану Гислеру за Тотал заплатил?
(40) я вот понимаю, что Тотал — это ВЕЩЬ! Также я понимаю, что заплатить за не го я не могу (не хочу?). НО: я его не ломал, не патчил и т.д. — он прекрасно работает и так, единственное ограничение — при запуске надо нажать одну кнопку! А запускаю я его одни раз в день — ПриНачалеРабочегоДня() 😉
(41) Где-то у меня лежит прога мною писанная, которая сама нужную кнопочку нажимает. На этой почве мы с Кристианом даже переписываться иногда начали :)))))
Если бы тотал вырубался после 10 дней использования и НЕ БЫЛО БЫ ломалок — я бы заплатил 500 рублей. Потому что ВЕЩЬ
(34)я тоже не имел счастья ставить кому-либо ломанную 1С… ибо если нету денех на продукт, то о какой оплате работы техничек могет быть речь… правда вот незнаю, к какому виду себя отнести вымирающими или как
(38)количество кача никак не показывает количество использования… во первых кто-то скачал несколько раз… во вторых кто-то скачал абы посмотреть… в третьих кто-то скачал, абы просто было… а то если так считать, то мою статью отсюдаhttp://club.shelek.ru/view.php?id=10 и только там глянули более 12000 раз… а ведь она на многих сайтах по 1С валялась
Ньдя… А я не имел счастья лицензионную 1С ставить 0_о
О!!! Так это ж я и писал 🙂
Слышал, что можно за 10-15 минут получить исходники модулей.
🙂
Народ, в чем проблема — шифрую глобальный модуль без установки лицензий.
Однако если к базе подключается 3ий и более пользователей, то они при входе получают сообщение «You excess counting register users!», хотя вроде все трое работают дальше без ограничений.
У 1С открытые модуля и благодаря этому 1С быстро завоевала свою часть рынка. А шифрование модулей это уже отказ от первоначального принципа развития платформы. Как то нехорошо и неправильно