Работаю над модулем продаж серийников для OpenCart. Все поставил правильно, интерфейс и в админке и в клиентской части добавился. Только там есть 2 галочки, нажимая которые и сохраняя настройки, должна происходить запись строки, говорящей, что у этого товара появились 2 активные поля с кодами на продажу (стр. 381-382) - см. screen1.png Код (Text): <file name="admin/language/*/catalog/product.php"> <operation error="log"> <search position="before"><![CDATA[ $_['entry_meta_description'] ]]></search> <add><![CDATA[ $_['entry_serialkey'] = 'Номера карт:'; // (стр. 381) $_['entry_sell_serialkeyword'] = 'Нужны номера карт?'; // (стр. 382) $_['entry_downloadlink'] = 'Ссылки на загрузку:'; ]]></add> </operation> </file> Но вот только стоит сохранить, как все изменения сохраняются кроме того, что флажки выставлены. Изначально расширение файла - .xml (ниже - стр. 491-510) Код (Text): <operation error="log"> <search position="before"><![CDATA[public function autocomplete]]></search> <add><![CDATA[ private function checkSerialkeysTables() { // New Installation $query = $this->db->query("SHOW TABLES LIKE '" . DB_PREFIX . "serialkeys'"); if (!$query->num_rows) { $this->db->query("CREATE TABLE IF NOT EXISTS `" . DB_PREFIX . "downloadlinks` (`downloadlink_id` int(11) NOT NULL AUTO_INCREMENT, `downloadlink` varchar(128) COLLATE utf8_bin NOT NULL DEFAULT '', `product_id` int(11) NOT NULL, `order_id` int(11) NOT NULL, `order_status_id` int(1) NOT NULL, `date_added` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`downloadlink_id`));"); $this->db->query("CREATE TABLE `" . DB_PREFIX . "order_downloadlink` (`order_downloadlink_id` int(11) NOT NULL AUTO_INCREMENT, `order_id` int(11) NOT NULL, `order_product_id` int(11) NOT NULL, `productname` varchar(64) COLLATE utf8_bin NOT NULL DEFAULT '', `downloadlink` varchar(128) COLLATE utf8_bin NOT NULL, `mask` varchar(128) COLLATE utf8_bin NOT NULL DEFAULT '', `remaining` int(3) NOT NULL DEFAULT '0', PRIMARY KEY (`order_downloadlink_id`));"); $this->db->query("CREATE TABLE `" . DB_PREFIX . "order_serialkey` (`order_serialkey_id` int(11) NOT NULL AUTO_INCREMENT, `order_id` int(11) NOT NULL, `order_product_id` int(11) NOT NULL, `productname` varchar(64) COLLATE utf8_bin NOT NULL DEFAULT '', `serialkey` varchar(128) COLLATE utf8_bin NOT NULL, `mask` varchar(128) COLLATE utf8_bin NOT NULL DEFAULT '', `remaining` int(3) NOT NULL DEFAULT '0', PRIMARY KEY (`order_serialkey_id`));"); $this->db->query("CREATE TABLE `" . DB_PREFIX . "product_to_downloadlink` (`product_id` int(11) NOT NULL, `downloadlink_id` int(11) NOT NULL, PRIMARY KEY (`product_id`,`downloadlink_id`));"); $this->db->query("CREATE TABLE `" . DB_PREFIX . "product_to_serial` (`product_id` int(11) NOT NULL, `serial_id` int(11) NOT NULL, PRIMARY KEY (`product_id`,`serial_id`));"); $this->db->query("CREATE TABLE `" . DB_PREFIX . "serialkeys` (`serial_id` int(11) NOT NULL AUTO_INCREMENT, `serialkey` varchar(128) COLLATE utf8_bin NOT NULL DEFAULT '', `product_id` int(11) NOT NULL, `order_id` int(11) NOT NULL, `order_status_id` int(1) NOT NULL, `date_added` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`serial_id`));"); $this->db->query("ALTER TABLE `" . DB_PREFIX . "product` ADD `saleserials` varchar(1) COLLATE utf8_bin NOT NULL DEFAULT 'N';"); $this->db->query("ALTER TABLE `" . DB_PREFIX . "product` ADD `saledownloadlinks` varchar(1) COLLATE utf8_bin NOT NULL DEFAULT 'N';"); } } ]]></add> </operation> Инициализация таблицы и запись - насколько я понимаю - в строках 491-510. Но! В результате работы этого мода: 1. Таблицы созданы 2. Строк в ней нет даже пустых И почему такое происходит - голову ломаю уже 2 дня! ПХП и остальное за 5 лет забыл напрочь - только остаточные знания, а тут вот понадобилось... ((( Прикрепляю: - скрин части админки - файл, над которым шаманю - полный модуль Устанавливал на OpenCart 2.1.0.1 с последним VQMod Что не так? Что посоветуете? P.S. Не знаю в какую ветку выложить. Dear Moderator! Если считаете, что сообщение более эффективно получит отклик в другом разделе - перебросьте его туда.
отладка/debug http://phpfaq.ru/debug https://netbeans.org/kb/docs/php/debugging_ru.html https://php.ru/forum/threads/howto-...i-po-shagam-i-s-kartinkami.58974/#post-474550
Спасибо. Пробую. но из первого пункта все проделал - 0 реакции ( Запустил F12 отладку - и там заблудился вообще (((
Надо от проблемной части раскручивать проблему вверх и перепроверяя, что там происходит. Где-то будет не стыковка.