Pycu4 Опубликовано 31 января, 2013 Жалоба Поделиться Опубликовано 31 января, 2013 После неудачного импорта очень много товаров добавились неправильно. Как удалить их все разом?И как на будущее настроить, что после импорта товры не из прайса удалялись? Хотя бы в import.php параметр удаления какой нужен для удаления позиции? Цитата Ссылка на сообщение Поделиться на другие сайты
JustDavali Опубликовано 31 января, 2013 Жалоба Поделиться Опубликовано 31 января, 2013 перед импортом надо всегда бекап делать.что бы потом при неудачном раскладе вернуть все как было. Цитата Ссылка на сообщение Поделиться на другие сайты
Enhill Опубликовано 31 января, 2013 Жалоба Поделиться Опубликовано 31 января, 2013 Как вариант запросом в базу:mysql_query("TRUNCATE TABLE s_products"); Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 31 января, 2013 Жалоба Поделиться Опубликовано 31 января, 2013 mysql_query("TRUNCATE TABLE s_variants");mysql_query("TRUNCATE TABLE s_products");mysql_query("TRUNCATE TABLE s_product_images");mysql_query("TRUNCATE TABLE s_relative_products");mysql_query("TRUNCATE TABLE s_product_categories");mysql_query("TRUNCATE TABLE s_options");Пишу по памяти, поэтому некоторые таблицы могут иметь схожие названия. Цитата Ссылка на сообщение Поделиться на другие сайты
larenso Опубликовано 29 января, 2015 Жалоба Поделиться Опубликовано 29 января, 2015 (изменено) mysql_query("TRUNCATE TABLE s_variants"); mysql_query("TRUNCATE TABLE s_products"); mysql_query("TRUNCATE TABLE s_product_images"); mysql_query("TRUNCATE TABLE s_relative_products"); mysql_query("TRUNCATE TABLE s_product_categories"); mysql_query("TRUNCATE TABLE s_options");Пишу по памяти, поэтому некоторые таблицы могут иметь схожие названия. Есть ошибки.Вот верно: mysql_query("TRUNCATE TABLE s_variants");mysql_query("TRUNCATE TABLE s_products");mysql_query("TRUNCATE TABLE s_images");mysql_query("TRUNCATE TABLE s_related_products");mysql_query("TRUNCATE TABLE s_products_categories");mysql_query("TRUNCATE TABLE s_options"); Себе сделал в админке отдельный пункт. Для всей очистки товаров и заказов. То так лениво иногда по странице удалять было) Изменено 29 января, 2015 пользователем larenso Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 29 января, 2015 Жалоба Поделиться Опубликовано 29 января, 2015 Не дай бог случайно какую то из кнопок нажать Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 12 июня, 2015 Жалоба Поделиться Опубликовано 12 июня, 2015 Е Себе сделал в админке отдельный пункт. Для всей очистки товаров и заказов. То так лениво иногда по странице удалять было) Подскажите реализацию как тоже сделать, мне для полигонного сайта, испытывать/отрабатывать всякие новинки и модули, соответственно приходится загружать товары/импортировать, а вот каждый раз лезть в БД не комфортно что-то стало.... Цитата Ссылка на сообщение Поделиться на другие сайты
larenso Опубликовано 12 июня, 2015 Жалоба Поделиться Опубликовано 12 июня, 2015 Не дай бог случайно какую то из кнопок нажать Там конечно подтверждение сделано для удаления) Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 12 июня, 2015 Жалоба Поделиться Опубликовано 12 июня, 2015 Там конечно подтверждение сделано для удаления) Подскажите реализацию пожалуйста ) Цитата Ссылка на сообщение Поделиться на другие сайты
larenso Опубликовано 12 июня, 2015 Жалоба Поделиться Опубликовано 12 июня, 2015 (изменено) Подскажите реализацию как тоже сделать, мне для полигонного сайта, испытывать/отрабатывать всякие новинки и модули, соответственно приходится загружать товары/импортировать, а вот каждый раз лезть в БД не комфортно что-то стало.... В файле /simpla/design/html/settings.tpl <!-- Параметры --> <div class="block layer"> <h2>Очистка магазина</a></h2> <a class="clear_orders" id="clear_orders" href="javascript:void(0);">Удалить все <b>заказы</b></a> <a class="clear_products" id="clear_products" href="javascript:void(0);">Удалить все <b>товары</b></a> </div> <!-- Параметры (The End)--> <input class="button_green button_save" type="submit" name="save" value="Сохранить" /> <!-- Левая колонка свойств товара (The End)--> </form> <!-- Основная форма (The End) --> {literal} <script> $(function() { $('#change_password_form').hide(); $('#change_password').click(function() { $('#change_password_form').show(); }); }); $('#clear_orders').click(function(){ function refresh() { if (confirm('Вы уверенны, что хотите удалить все заказы?')) { $.ajax({ url: "ajax/clear_orders.php", data: {clear:1}, success: function(data){ //console.log(data); if(data) { window.location.reload(); } }, error:function() { alert('error'); } }); } else { return false; } } refresh(); }); $('#clear_products').click(function(){ function refresh() { if (confirm('Вы уверенны, что хотите удалить все товары?')) { $.ajax({ url: "ajax/clear_products.php", data: {clear:1}, success: function(data){ //console.log(data); if(data) { window.location.reload(); } }, error:function() { alert('error'); } }); } else { return false; } } refresh(); }); </script> {/literal} Создаем файл в /simpla/ajax/clear_orders.php <?php chdir('../..'); require_once('api/Simpla.php'); class Clear_Order_Ajax extends Simpla { public function fetch() { setlocale(LC_ALL, 'ru_RU.UTF-8'); $this->db->query('SET NAMES utf8'); if(!empty($this->request->get('clear'))){ $this->db->query('TRUNCATE s_orders'); $this->db->query('TRUNCATE s_orders_labels'); $this->db->query('TRUNCATE s_purchases'); } return true; } } $clear_order_ajax = new Clear_Order_Ajax(); $data = $clear_order_ajax->fetch(); if($data) { echo $data; } Создаем еще один файл /simpla/ajax/clear_products.php <?php chdir('../..'); require_once('api/Simpla.php'); class Clear_Order_Ajax extends Simpla { public function fetch() { setlocale(LC_ALL, 'ru_RU.UTF-8'); $this->db->query('SET NAMES utf8'); if(!empty($this->request->get('clear'))){ $this->db->query('TRUNCATE s_variants'); $this->db->query('TRUNCATE s_products'); $this->db->query('TRUNCATE s_images'); $this->db->query('TRUNCATE s_related_products'); $this->db->query('TRUNCATE s_products_categories'); $this->db->query('TRUNCATE s_options'); } return true; } } $clear_order_ajax = new Clear_Order_Ajax(); $data = $clear_order_ajax->fetch(); if($data) { echo $data; } В последнем варианте смотрите внимательно, так как у вас может отличаться. У меня допустим к товарам еще цеплялись видео s_videos P.S.Фотографии товаров из /products/ НЕ удаляются. Их руками нужно. Не стал замарачиваться дальше править это) Изменено 12 июня, 2015 пользователем larenso Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 12 июня, 2015 Жалоба Поделиться Опубликовано 12 июня, 2015 (изменено) В файле /simpla/design/html/settings.tpl <!-- Параметры --> <div class="block layer"> <h2>Очистка магазина</a></h2> <a class="clear_orders" id="clear_orders" href="javascript:void(0);">Удалить все <b>заказы</b></a> <a class="clear_products" id="clear_products" href="javascript:void(0);">Удалить все <b>товары</b></a> </div> <!-- Параметры (The End)--> <input class="button_green button_save" type="submit" name="save" value="Сохранить" /> <!-- Левая колонка свойств товара (The End)--> </form> <!-- Основная форма (The End) --> {literal} <script> $(function() { $('#change_password_form').hide(); $('#change_password').click(function() { $('#change_password_form').show(); }); }); $('#clear_orders').click(function(){ function refresh() { if (confirm('Вы уверенны, что хотите удалить все заказы?')) { $.ajax({ url: "ajax/clear_orders.php", data: {clear:1}, success: function(data){ //console.log(data); if(data) { window.location.reload(); } }, error:function() { alert('error'); } }); } else { return false; } } refresh(); }); $('#clear_products').click(function(){ function refresh() { if (confirm('Вы уверенны, что хотите удалить все товары?')) { $.ajax({ url: "ajax/clear_products.php", data: {clear:1}, success: function(data){ //console.log(data); if(data) { window.location.reload(); } }, error:function() { alert('error'); } }); } else { return false; } } refresh(); }); </script> {/literal} Создаем файл в /simpla/ajax/clear_orders.php <?php chdir('../..'); require_once('api/Simpla.php'); class Clear_Order_Ajax extends Simpla { public function fetch() { setlocale(LC_ALL, 'ru_RU.UTF-8'); $this->db->query('SET NAMES utf8'); if(!empty($this->request->get('clear'))){ $this->db->query('TRUNCATE s_orders'); $this->db->query('TRUNCATE s_orders_labels'); $this->db->query('TRUNCATE s_purchases'); } return true; } } $clear_order_ajax = new Clear_Order_Ajax(); $data = $clear_order_ajax->fetch(); if($data) { echo $data; } Создаем еще один файл /simpla/ajax/clear_products.php <?php chdir('../..'); require_once('api/Simpla.php'); class Clear_Order_Ajax extends Simpla { public function fetch() { setlocale(LC_ALL, 'ru_RU.UTF-8'); $this->db->query('SET NAMES utf8'); if(!empty($this->request->get('clear'))){ $this->db->query('TRUNCATE s_variants'); $this->db->query('TRUNCATE s_products'); $this->db->query('TRUNCATE s_images'); $this->db->query('TRUNCATE s_related_products'); $this->db->query('TRUNCATE s_products_categories'); $this->db->query('TRUNCATE s_options'); } return true; } } $clear_order_ajax = new Clear_Order_Ajax(); $data = $clear_order_ajax->fetch(); if($data) { echo $data; } В последнем варианте смотрите внимательно, так как у вас может отличаться. У меня допустим к товарам еще цеплялись видео s_videos P.S.Фотографии товаров из /products/ НЕ удаляются. Их руками нужно. Не стал замарачиваться дальше править это) Огромное спасибо! Я так понимаю — из originals они удаляются? Изменено 12 июня, 2015 пользователем Maksclub Цитата Ссылка на сообщение Поделиться на другие сайты
larenso Опубликовано 12 июня, 2015 Жалоба Поделиться Опубликовано 12 июня, 2015 Огромное спасибо! Не за что. Еще забыл классы передать. .clear_orders { display: block; float: left; width: auto; font-size: 12px; text-decoration: none; padding: 7px 17px 7px 50px; border: 1px solid #c0c0c0; color: #5e5e5e; background: #FFE8E8 url(../images/menu/orders.png) no-repeat -17px -5px; border-radius: 15px; -moz-border-radius: 15px; -khtml-border-radius: 15px; -webkit-border-radius: 15px; white-space: nowrap; margin-top: 3px; margin-right: 15px; } .clear_orders:hover { color: #FFFFFF; background: #FF6060 url(../images/menu/orders.png) no-repeat -17px -5px; } .clear_products { display: block; float: left; width: auto; font-size: 12px; text-decoration: none; padding: 7px 17px 7px 50px; border: 1px solid #c0c0c0; color: #5e5e5e; background: #FFE8E8 url(../images/menu/catalog.png) no-repeat -15px -22px; border-radius: 15px; -moz-border-radius: 15px; -khtml-border-radius: 15px; -webkit-border-radius: 15px; white-space: nowrap; margin-top: 3px; margin-right: 15px; } .clear_products:hover { color: #FFFFFF; background: #FF6060 url(../images/menu/catalog.png) no-repeat -15px -22px; } Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 12 июня, 2015 Жалоба Поделиться Опубликовано 12 июня, 2015 (изменено) Не за что. Еще забыл классы передать. Да стили не нужны, тестовый же сайт, а вот ошибочку выдает, правда на кнопке "Удалить все заказы", товары пока не могу стереть. UPD: Невнимательно сделал... спасибо ) Все работает, clear_orders.php не создал Изменено 12 июня, 2015 пользователем Maksclub Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 12 июня, 2015 Жалоба Поделиться Опубликовано 12 июня, 2015 Ужас, непомерно сложно для такой простой задачи, особенно если принять во внимание, что делается для внутреннего пользования. Надо бы проще, примерно так:1. в simpla/index.php в конце добавить: if($_REQUEST['clear_products']){ $backend->db->query('TRUNCATE s_variants'); $backend->db->query('TRUNCATE s_products'); $backend->db->query('TRUNCATE s_images'); $backend->db->query('TRUNCATE s_related_products'); $backend->db->query('TRUNCATE s_products_categories'); $backend->db->query('TRUNCATE s_options'); } 2. В нужном месте в админке поставить ссылку <a href="simpla?clear_products=yes">Удалить все товары</a>3. Если боитесь удалить случайно, на ссылку еще подтверждение повесить... Аналогично по заказам... Цитата Ссылка на сообщение Поделиться на другие сайты
Xdriver Опубликовано 28 августа, 2015 Жалоба Поделиться Опубликовано 28 августа, 2015 truncate s_images truncate s_products truncate s_categories truncate s_brands Это все прекрасно, но при импорте смотрим картинку... undefined Это с учетом удаления всех картинок на фтп домен / files / ... После импорта товар размещается без картинок, либо картинки соответствуют не своему товару, тот же трабл с контен том к товарам. Где следы остаются? Если вручную удалять позиции через админку (на это уходит Очень много времени) - все ОК. Заранее благодарен за ответ. Цитата Ссылка на сообщение Поделиться на другие сайты
Xdriver Опубликовано 28 августа, 2015 Жалоба Поделиться Опубликовано 28 августа, 2015 truncate s_imagestruncate s_productstruncate s_categoriestruncate s_brands Это все прекрасно, но при импорте смотрим картинку... undefinedЭто с учетом удаления всех картинок на фтп домен / files / ...После импорта товар размещается без картинок, либо картинки соответствуют не своему товару, тот же трабл с контен том к товарам.Где следы остаются?Если вручную удалять позиции через админку (на это уходит Очень много времени) - все ОК.Заранее благодарен за ответ.simpla_import.jpgРешено транкомtruncate s_imagestruncate s_productstruncate s_categoriestruncate s_brandsTRUNCATE s_variantsTRUNCATE s_related_productsTRUNCATE s_products_categoriestruncate SC_product_optionstruncate SC_product_options_settruncate s_purchases пробуем кнопку в админку... Цитата Ссылка на сообщение Поделиться на другие сайты
RedPython Опубликовано 9 августа, 2018 Жалоба Поделиться Опубликовано 9 августа, 2018 truncate s_imagestruncate s_productstruncate s_categories Это все прекрасно, но при импорте смотрим картинку...здорово что у Вас то всё "прекрасно" ... а быть может кто API подскажет Simpla, чтобы этим велоспидизмом не заниматься? Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 9 августа, 2018 Жалоба Поделиться Опубликовано 9 августа, 2018 truncate s_images truncate s_products truncate s_categories здорово что у Вас то всё "прекрасно" ... а быть может кто API подскажет Simpla, чтобы этим велоспидизмом не заниматься?В API симплы нет метода удаления сразу всех товаров. Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 9 августа, 2018 Жалоба Поделиться Опубликовано 9 августа, 2018 а быть может кто API подскажет Simpla Что конкретно надо Вам подсказать?Если где располается, то в папке api.Если как изменить API в Simpla, чтобы был нужный Вам функционал, то это надо аккуратно программировать. Как сделать - в теме дано даже два способа. Если Вам это совсем непонятно, то надо искать мастера, который Вам выполнит за денежку... Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.