

hostup
Новичок-
Posts
25 -
Joined
-
Last visited
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
hostup's Achievements
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
В эту сторону и смотрю. Все пути, вида (<file path="") в .xml файле верные. Код, который отвечает за внесение поля в карточку товара имеет какие-л. типичные признаки для поиска в .xml документе? Ну, им ['insert'] или <placehere_...>?- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
1. Вылистил все усиновленные модулем php и tpl из папок и перезалил БД. 2. Усиновил через админку (без строки) ALTER TABLE `s_product` DROP COLUMN `infoproduct`; 3. Олистил и обновил модификаторы. 4. Активировал модуль в модули/расширения 5. Система-Пользователи-Группа пользователей-Administrator-Выгделить все (на просмотр и внесение изменений) Но в карточке товара не появилась заветная строка... Ок, залью, как догделаю сайт, им бугде видно...- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
Grand Master Tom, выше, предложил удалить 3 строки ALTER TABLE `s_product` DROP COLUMN `infoproduct`; DELETE FROM `s_url_alias` WHERE query = 'extension/module/infoproduct'; INSERT INTO `s_url_alias` (`query`, `keyword`) VALUES ('extension/module/infoproduct', 'link'); и модуль усиновился, но в карте товара не появляется поле "инфопродукт". Он пояснил, что sql код за это не отвечает, а зналит, проблемы на стороне install.xml, а если ик - им все сложно. Попробую, конечно, сейчас без DROP COLUMN строки закинуть, но вряд ли во вкладке товара от этого строка появится...- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
Да выполнял... Не удаляется столбец, которого нет... Все потому чтольше склоняюсь, что модуль под ос2.3 не синовится просто под мою ос2.3.0.2- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
Версия модуля oc23 мой OCStore 2.3.0.2. может он строго под 2.3, без ....0.2. Ранее, любые модули для 2.3 ложились без выше опотому чтозначенных проблем. На счет "не то и не ик" - по логике вы правы. Что именно? Хороший вопрос, но все как обычно... Заливал и напрямую и через админку, модификацию обновлял, в списке модулей, модуль активировал. Ну, разве что святот водой монитор не поливал. Ну, да ладно, буду "чесать репу")- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
Хм, неясно тогда, зачем они нужны. В install.xml - им темный лес для меня (что-куда). Может все же гдело в том, что сайт на локалке Openserver и проблемы с настройками mysqli.php? Догделаю сайт, попробую усиновить модуль на хостинге.- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
Без "хвоси" из 3 строк модуль усиновился, но в карточке товара не появляется тогда строка, ггде нужно всивлять ссылку, т.е., похоже, сил криво. Зналит, эти строчки нужны...- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
Через phpMyadmin то же самое не может удалить столбец, которого нет (что логично)...- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
Я вас правильно понял - из модуля убираю install.sql, а в phpMySQL добавляю весь код из install.sql именно SQL-запросом? Или что-то из install.sql нужно вычеркнуть / изменить?- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
Да я же говорил, Ну, т.е. префикс)- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
check that column/key exists: ALTER TABLE
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
В файле install.sql — указано ALTER TABLE `oc_product` При усиновке модуля — ошибка ALTER TABLE `s_product` Не понял, что куда из вашего отвеи, сори.- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
hostup started following Загрузка архива на страниэто товара кнопкой and check that column/key exists: ALTER TABLE
-
Приветствую, мастера. В папке модуля есть файл install.sql. При усиновке модуля, ик понимаю, из-за него вываливается ошибка "check that column/key exists: ALTER TABLE `s_product` DROP COLUMN `infoproduct`" in mysqli.php на строке 40. Пропотому чтовал менять префикс oc_ на "свой" s_. Т.е. команда не может убрать колонку, которой нет. Сам sql запрос ниже. Укажите направление, кто "в теме", спасипотому что. Да, и еещё, сайт на "локалке" Openserver, может отсюда "ноги растут"? CREATE TABLE IF NOT EXISTS `oc_order_links` ( `link_id` int(11) NOT NULL AUTO_INCREMENT, `order_id` int(11) NOT NULL, `product_id` int(11) NOT NULL, `code` varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `date_end` datetime NOT NULL, `ikey` int(11) NOT NULL, PRIMARY KEY (`link_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `oc_product` DROP COLUMN `infoproduct`; ALTER TABLE `oc_product` ADD COLUMN `infoproduct` LONGTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; DELETE FROM `oc_url_alias` WHERE query = 'extension/module/infoproduct'; INSERT INTO `oc_url_alias` (`query`, `keyword`) VALUES ('extension/module/infoproduct', 'link');
- 22 replies
-
- install.sql
- mysqli.php на строке 40
-
(and 2 more)
Tagged with:
-
Загрузка архива на страниэто товара кнопкой
hostup replied to hostup's topic in Opencart 2.x: Общие вопросы
3DO, по сути нужно было вырезать код между тегами <operation>, включая эти теги тоже, для вкладки и согдержимого! Я ик гделал, но у меня product.tpl обновлял product.tpl из modification и получался кавардак. В итоге я запуился, отчаялся и обратился сюда за помощью. 3DO, спасипотому что за помощь, настроение мое улучшилось!- 2 replies
-
- tab-documentation
- загрузка файла
-
(and 2 more)
Tagged with:
-
Здравствуйте. Есть модуль "Загрузка файла" на страниэто product.tpl, при усиновке которого в отгдельной вкладке появляется файл загрузки. Я его "досил" из вкладки и сгделал кнопкой, всивив код ниже в кнопку. <a href="<?php echo $download['href']; ?>" title="<?php echo $download['name']; ?>" target="_blank"><?php echo $download['name']; ?><?php echo ($download['size'])?" (". $download['size'] .")":'';?></a> Все ок, но при обновлении модификаторов, в product.tpl снова прописывается вкладка: <?php if ($downloads) { ?> <li><a href="#tab-documentation" data-toggle="tab"><?php echo $tab_documentation; ?></a></li> <?php } ?> И согдержимое вкладки: <div class="tab-pane tab-content" id="tab-documentation"> <?php if ($downloads){ ?> <ul style="list-style:none;"> <?php foreach($downloads as $download){ ?> <li><i class="<?php echo $download['icon']; ?>"></i> <a href="<?php echo $download['href']; ?>" title="<?php echo $download['name']; ?>" target="_blank"><?php echo $download['name']; ?><?php echo ($download['size'])?" (". $download['size'] .")":'';?></a></li> <?php } ?> </ul> <?php } ?> </div> Что из файла install.xml нужно убрать, чтобы вкладка и ее согдержимое снова не прописывались в product.tpl? <?xml version="1.0" encoding="utf-8"?> <modification> <name>Загружаемые файлы во вкладке</name> <code>downloadable_files</code> <version>1.3</version> <author>https://ocmod.net</author> <link>https://ocmod.net</link> <file path="admin/controller/catalog/download.php"> <operation> <search index="0"><![CDATA[128]]></search> <add position="replace"><![CDATA[255]]></add> </operation> <operation> <search trim="true"><![CDATA[if (!is_file(DIR_DOWNLOAD . $this->request->post['filename'])) {]]></search> <add position="replace"><![CDATA[ if (!is_file(DIR_DOWNLOAD . $this->request->post['filename']) AND !preg_match('/^http/',$this->request->post['filename'])) {]]></add> </operation> </file> <file path="catalog/language/*/product/product.php"> <operation> <search index="0"><![CDATA[$_['tab_description']]]></search> <add position="before"><![CDATA[$_['tab_documentation'] = 'Файлы для скаливания';]]></add> </operation> </file> <file path="catalog/model/catalog/product.php"> <operation> <search index="0" trim="true"><![CDATA[public function getTotalProductSpecials() {]]></search> <add position="before"><![CDATA[ public function getDownloads($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_download pd LEFT JOIN " . DB_PREFIX . "download d ON(pd.download_id=d.download_id) LEFT JOIN " . DB_PREFIX . "download_description dd ON(pd.download_id=dd.download_id) WHERE product_id = '" . (int)$product_id . "' AND dd.language_id = '" . (int)$this->config->get('config_language_id')."'"); return $query->rows; } public function getDownload($product_id, $download_id) { $download=""; if($download_id!=0)$download=" AND d.download_id=".(int)$download_id; $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_download pd LEFT JOIN " . DB_PREFIX . "download d ON(pd.download_id=d.download_id) LEFT JOIN " . DB_PREFIX . "download_description dd ON(pd.download_id=dd.download_id) WHERE product_id = '" . (int)$product_id . "' ".$download." AND dd.language_id = '" . (int)$this->config->get('config_language_id')."'"); return $query->row; } ]]></add> </operation> </file> <file path="catalog/controller/product/product.php"> <operation error="skip"> <search index="0" trim="true"><![CDATA[$data['tab_description'] = $this->language->get('tab_description');]]></search> <add position="before"><![CDATA[ $data['tab_documentation'] = $this->language->get('tab_documentation');]]></add> </operation> <operation> <search index="0" trim="true"><![CDATA[public function review() {]]></search> <add position="before"><![CDATA[ public function download() { $this->load->model('catalog/product'); if (isset($this->request->get['download_id'])) { $download_id = $this->request->get['download_id']; } else { $download_id = 0; } if (isset($this->request->get['product_id'])) { $product_id = $this->request->get['product_id']; } else { $product_id = 0; } $download_info = $this->model_catalog_product->getDownload($product_id, $download_id); if ($download_info) { $file = DIR_DOWNLOAD . $download_info['filename']; $mask = basename($download_info['mask']); if (!headers_sent()) { if (file_exists($file)) { //$finfo = new finfo(FILEINFO_MIME); //$mime_type = $finfo->file($file); $mime_type = 'application/octet-stream'; header('Content-Description: File Transfer'); header('Content-Type: '.$mime_type); //application/octet-stream header('Content-Disposition: inline; filename="' . ($mask ? $mask : basename($file)) . '"'); //attachment header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header('Content-Length: ' . filesize($file)); readfile($file, 'rb'); //$this->model_account_download->updateRemaining($this->request->get['download_id']); exit; } else { exit('Error: Could not find file ' . $file . '!'); } } else { exit('Error: Headers already sent out!'); } } else { $this->redirect(HTTP_SERVER . 'index.php?route=account/download'); } } ]]> </add> </operation> <operation> <search index="0" trim="true"><![CDATA[$this->model_catalog_product->updateViewed($this->request->get['product_id']);]]></search> <add position="before"><![CDATA[ $data['downloads'] = array(); $results = $this->model_catalog_product->getDownloads($this->request->get['product_id']); foreach ($results as $result) { $size = false; $file_exists = file_exists(DIR_DOWNLOAD . $result['filename']); $http = preg_match('/^http/',$result['filename']); if ($file_exists OR $http) { if ($file_exists) { $size = filesize(DIR_DOWNLOAD . $result['filename']); $i = 0; $suffix = array( 'B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB' ); while (($size / 1024) > 1) { $size = $size / 1024; $i++; } } $data['downloads'][] = array( 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])), 'name' => $result['name'], 'size' => ($size)?round(substr($size, 0, strpos($size, '.') + 4), 2) . $suffix[$i]:false, 'href' => ($http)?$result['filename']:$this->url->link('product/product/download', 'product_id='. $this->request->get['product_id']. '&download_id=' . $result['download_id']), 'icon' => ($http)?'fa fa-external-link-square text-primary':'fa fa-download text-success' ); } } ]]> </add> </operation> </file> <file path="catalog/view/theme/*/template/product/product.tpl"> <operation error="skip"> <search index="0" trim="true"><![CDATA[<?php if ($review_status) { ?>]]></search> <add position="before"><![CDATA[ <?php if ($downloads) { ?> <li><a href="#tab-documentation" data-toggle="tab"><?php echo $tab_documentation; ?></a></li> <?php } ?> ]]> </add> </operation> <operation error="skip"> <search index="1" trim="true"><![CDATA[<?php if ($review_status) { ?>]]></search> <add position="before"><![CDATA[ <div class="tab-pane tab-content" id="tab-documentation"> <?php if ($downloads){ ?> <ul style="list-style:none;"> <?php foreach($downloads as $download){ ?> <li><i class="<?php echo $download['icon']; ?>"></i> <a href="<?php echo $download['href']; ?>" title="<?php echo $download['name']; ?>" target="_blank"><?php echo $download['name']; ?><?php echo ($download['size'])?" (". $download['size'] .")":'';?></a></li> <?php } ?> </ul> <?php } ?> </div> ]]> </add> </operation> </file> <!-- For SEO PRO: --> <file path="catalog/controller/*/seo_pro.php"> <operation error="skip"> <search><![CDATA[case 'information_id':]]></search> <add position="after"><![CDATA[ case 'download_id': ]]></add> </operation> </file> <file path="system/library/seopro.php"> <operation error="skip"> <search><![CDATA[case 'information_id':]]></search> <add position="after"><![CDATA[ case 'download_id': ]]></add> </operation> </file> </modification>
- 2 replies
-
- tab-documentation
- загрузка файла
-
(and 2 more)
Tagged with:
-
Зналит, казалось проещё, чем оказалось)