Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Кнопка сброса количества товаров в админке по фильтру


 Поделиться

Рекомендованные сообщения

Добрый день всем!

Понадобился небольшой функционал в админке в списке товаров, а именно добавить кнопку удаления количества товаров по фильтру (групповая обработка).
Ни как не получается.
Что сделал:
файл admin/model/catalog/product.php добавил фнкцию

 public function upnullProduct($product_id) {
		$this->db->query("UPDATE" . DB_PREFIX . "product SET quantity = 0 WHERE product_id = '" . (int)$product_id . "'");		
	}

файл admin/controller/catalog/product.php  добавил следующий код

public function upnull() {
		$this->language->load('catalog/product');

		$this->document->setTitle($this->language->get('heading_title'));

		$this->load->model('catalog/product');

		if (isset($this->request->post['selected']) && $this->validateUpnull()) {
			foreach ($this->request->post['selected'] as $product_id) {
				$this->model_catalog_product->upnullProduct($product_id);
			}

			$this->session->data['success'] = $this->language->get('text_success');

			$url = '';

			if (isset($this->request->get['filter_name'])) {
				$url .= '&filter_name=' . urlencode(html_entity_decode($this->request->get['filter_name'], ENT_QUOTES, 'UTF-8'));
			}

			if (isset($this->request->get['filter_model'])) {
				$url .= '&filter_model=' . urlencode(html_entity_decode($this->request->get['filter_model'], ENT_QUOTES, 'UTF-8'));
			}

			if (isset($this->request->get['filter_price'])) {
				$url .= '&filter_price=' . $this->request->get['filter_price'];
			}

			if (isset($this->request->get['filter_quantity'])) {
				$url .= '&filter_quantity=' . $this->request->get['filter_quantity'];
			}

      if (isset($this->request->get['filter_category'])) {
        $url .= '&filter_category=' . $this->request->get['filter_category'];
      }

			if (isset($this->request->get['filter_status'])) {
				$url .= '&filter_status=' . $this->request->get['filter_status'];
			}

			if (isset($this->request->get['sort'])) {
				$url .= '&sort=' . $this->request->get['sort'];
			}

			if (isset($this->request->get['order'])) {
				$url .= '&order=' . $this->request->get['order'];
			}

			if (isset($this->request->get['page'])) {
				$url .= '&page=' . $this->request->get['page'];
			}

			$this->response->redirect($this->url->link('catalog/product', 'token=' . $this->session->data['token'] . $url, 'SSL'));
		}

		$this->getList();
	}

и ниже

$data['copy'] = $this->url->link('catalog/product/copy', 'token=' . $this->session->data['token'] . $url, 'SSL');
$data['delete'] = $this->url->link('catalog/product/delete', 'token=' . $this->session->data['token'] . $url, 'SSL');
$data['upnull'] = $this->url->link('catalog/product/upnull', 'token=' . $this->session->data['token'] . $url, 'SSL');

В шаблон вставил

<button type="button" data-toggle="tooltip" title="На 0" class="btn btn-danger" onclick="$('#form-product').attr('action', '<?php echo $upnull; ?>').submit()"><i class="fa fa-copy"></i></button>

При клике на кнопку - Список товаров обновлен!  и ничего не меняется, где еще надо править код ?
заранее спасибо

 



 

Ссылка на комментарий
Поделиться на других сайтах


А что показывает отладчик в браузере? Запрос на сервер уходит?

Висит в ошибках строка

http://localhost/ps/admin/index.php?route=catalog/product/upnull&token=AxVKfYnIQHPtDLroVSxD9zJK2LQLuT5I
Изменено пользователем andrsin
Ссылка на комментарий
Поделиться на других сайтах


какая ошибка? 500?

что в логах сервера?

2016-10-18 10:27:00 - PHP Notice:  Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UPDATEocsp_product SET quantity = 0 WHERE product_id = '47'' at line 1<br />Error No: 1064<br />UPDATEocsp_product SET quantity = 0 WHERE product_id = '47' in C:\xampp\htdocs\ps\system\library\db\mysqli.php on line 41

Разобрался, спасибо за поддержку! UPDATEocsp_product  напиcал без пробела. В этот журнал и не заглядывал, думал что Список товаров обновлен! - зелененькая надпись говорит Все хорошо.

Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.