Перейти к содержанию
LaFF

Ошибка при добавление товара

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

Здравствуйте Уважаемые пользователи форума!

Столкнулся с проблемой: выскакивает ошибка при попытке добавить довар:

Notice: Undefined index: manufacturer_id in /var/www/***/vqmod/vqcache/vq2-admin_controller_catalog_manufacturer.php on line 43Warning: Cannot modify header information - headers already sent by (output started at /var/www/***/admin/index.php:83) in /var/www/***/vqmod/vqcache/vq2-system_engine_controller.php on line 28Warning: Cannot modify header information - headers already sent by (output started at /var/www/***/admin/index.php:83) in /var/www/***/vqmod/vqcache/vq2-system_engine_controller.php on line 29
пытался найти на этом форуме ответ ,но так и не смог, гугл тоже мне не помог. Ошибка появилась после установки vQmod 2.1.7

такая же ошибка выскакивает при добавление производителей.

двиг сайта ostore 1.5.2.1

заранее спасибо

Поделиться сообщением


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

Непроиндексирована переменная manufacturer_id в файле по адресу admincontrollercatalogmanufacturer.php, отправьте весь код под спойлером из файла /vqmod/vqcache/vq2-admin_controller_catalog_manufacturer.php, попробуем сообразить чего не хватает в коде.

  • +1 1

Поделиться сообщением


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

пожалуйста:

<?php

class ControllerCatalogManufacturer extends Controller {

private $error = array();

public function index() {

$this->load->language('catalog/manufacturer');

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

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

$this->getList();

}

public function insert() {

$this->load->language('catalog/manufacturer');

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

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

if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) {

$this->model_catalog_manufacturer->addManufacturer($this->request->post);

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

$url = '';

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'];

}

if(isset($this->request->post['apply']) and $this->request->post['apply'])

$this->redirect($this->url->link('catalog/manufacturer/update', 'token=' . $this->session->data['token'] . '&manufacturer_id=' . $this->request->get['manufacturer_id'] . $url, 'SSL'));

else

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

}

$this->getForm();

}

public function update() {

$this->load->language('catalog/manufacturer');

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

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

if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) {

$this->model_catalog_manufacturer->editManufacturer($this->request->get['manufacturer_id'], $this->request->post);

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

$url = '';

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'];

}

if(isset($this->request->post['apply']) and $this->request->post['apply'])

$this->redirect($this->url->link('catalog/manufacturer/update', 'token=' . $this->session->data['token'] . '&manufacturer_id=' . $this->request->get['manufacturer_id'] . $url, 'SSL'));

else

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

}

$this->getForm();

}

public function delete() {

$this->load->language('catalog/manufacturer');

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

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

if (isset($this->request->post['selected']) && $this->validateDelete()) {

foreach ($this->request->post['selected'] as $manufacturer_id) {

$this->model_catalog_manufacturer->deleteManufacturer($manufacturer_id);

}

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

$url = '';

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'];

}

if(isset($this->request->post['apply']) and $this->request->post['apply'])

$this->redirect($this->url->link('catalog/manufacturer/update', 'token=' . $this->session->data['token'] . '&manufacturer_id=' . $this->request->get['manufacturer_id'] . $url, 'SSL'));

else

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

}

$this->getList();

}

private function getList() {

if (isset($this->request->get['sort'])) {

$sort = $this->request->get['sort'];

} else {

$sort = 'name';

}

if (isset($this->request->get['order'])) {

$order = $this->request->get['order'];

} else {

$order = 'ASC';

}

if (isset($this->request->get['page'])) {

$page = $this->request->get['page'];

} else {

$page = 1;

}

$url = '';

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->data['breadcrumbs'] = array();

$this->data['breadcrumbs'][] = array(

'text' => $this->language->get('text_home'),

'href' => $this->url->link('common/home', 'token=' . $this->session->data['token'], 'SSL'),

'separator' => false

);

$this->data['breadcrumbs'][] = array(

'text' => $this->language->get('heading_title'),

'href' => $this->url->link('catalog/manufacturer', 'token=' . $this->session->data['token'] . $url, 'SSL'),

'separator' => ' :: '

);

$this->data['insert'] = $this->url->link('catalog/manufacturer/insert', 'token=' . $this->session->data['token'] . $url, 'SSL');

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

$this->data['manufacturers'] = array();

$data = array(

'sort' => $sort,

'order' => $order,

'start' => ($page - 1) * $this->config->get('config_admin_limit'),

'limit' => $this->config->get('config_admin_limit')

);

$manufacturer_total = $this->model_catalog_manufacturer->getTotalManufacturers();

$results = $this->model_catalog_manufacturer->getManufacturers($data);

foreach ($results as $result) {

$action = array();

$action[] = array(

'text' => $this->language->get('text_edit'),

'href' => $this->url->link('catalog/manufacturer/update', 'token=' . $this->session->data['token'] . '&manufacturer_id=' . $result['manufacturer_id'] . $url, 'SSL')

);

$this->data['manufacturers'][] = array(

'manufacturer_id' => $result['manufacturer_id'],

'name' => $result['name'],

'sort_order' => $result['sort_order'],

'selected' => isset($this->request->post['selected']) && in_array($result['manufacturer_id'], $this->request->post['selected']),

'action' => $action

);

}

$this->data['heading_title'] = $this->language->get('heading_title');

$this->data['text_no_results'] = $this->language->get('text_no_results');

$this->data['column_name'] = $this->language->get('column_name');

$this->data['column_sort_order'] = $this->language->get('column_sort_order');

$this->data['column_action'] = $this->language->get('column_action');

$this->data['button_insert'] = $this->language->get('button_insert');

$this->data['button_delete'] = $this->language->get('button_delete');

if (isset($this->error['warning'])) {

$this->data['error_warning'] = $this->error['warning'];

} else {

$this->data['error_warning'] = '';

}

if (isset($this->session->data['success'])) {

$this->data['success'] = $this->session->data['success'];

unset($this->session->data['success']);

} else {

$this->data['success'] = '';

}

$url = '';

if ($order == 'ASC') {

$url .= '&order=DESC';

} else {

$url .= '&order=ASC';

}

if (isset($this->request->get['page'])) {

$url .= '&page=' . $this->request->get['page'];

}

$this->data['sort_name'] = $this->url->link('catalog/manufacturer', 'token=' . $this->session->data['token'] . '&sort=name' . $url, 'SSL');

$this->data['sort_sort_order'] = $this->url->link('catalog/manufacturer', 'token=' . $this->session->data['token'] . '&sort=sort_order' . $url, 'SSL');

$url = '';

if (isset($this->request->get['sort'])) {

$url .= '&sort=' . $this->request->get['sort'];

}

if (isset($this->request->get['order'])) {

$url .= '&order=' . $this->request->get['order'];

}

$pagination = new Pagination();

$pagination->total = $manufacturer_total;

$pagination->page = $page;

$pagination->limit = $this->config->get('config_admin_limit');

$pagination->text = $this->language->get('text_pagination');

$pagination->url = $this->url->link('catalog/manufacturer', 'token=' . $this->session->data['token'] . $url . '&page={page}', 'SSL');

$this->data['pagination'] = $pagination->render();

$this->data['sort'] = $sort;

$this->data['order'] = $order;

$this->template = 'catalog/manufacturer_list.tpl';

$this->children = array(

'common/header',

'common/footer'

);

$this->response->setOutput($this->render());

}

private function getForm() {

$this->data['heading_title'] = $this->language->get('heading_title');

$this->data['text_enabled'] = $this->language->get('text_enabled');

$this->data['text_disabled'] = $this->language->get('text_disabled');

$this->data['text_default'] = $this->language->get('text_default');

$this->data['text_image_manager'] = $this->language->get('text_image_manager');

$this->data['text_browse'] = $this->language->get('text_browse');

$this->data['text_clear'] = $this->language->get('text_clear');

$this->data['text_percent'] = $this->language->get('text_percent');

$this->data['text_amount'] = $this->language->get('text_amount');

$this->data['entry_name'] = $this->language->get('entry_name');

$this->data['entry_store'] = $this->language->get('entry_store');

$this->data['entry_keyword'] = $this->language->get('entry_keyword');

$this->data['entry_image'] = $this->language->get('entry_image');

$this->data['entry_sort_order'] = $this->language->get('entry_sort_order');

$this->data['entry_customer_group'] = $this->language->get('entry_customer_group');

$this->data['entry_meta_keyword'] = $this->language->get('entry_meta_keyword');

$this->data['entry_meta_description'] = $this->language->get('entry_meta_description');

$this->data['entry_description'] = $this->language->get('entry_description');

$this->data['entry_seo_title'] = $this->language->get('entry_seo_title');

$this->data['entry_seo_h1'] = $this->language->get('entry_seo_h1');

$this->data['button_save'] = $this->language->get('button_save');

$this->data['button_cancel'] = $this->language->get('button_cancel');

$this->data['tab_general'] = $this->language->get('tab_general');

if (isset($this->error['warning'])) {

$this->data['error_warning'] = $this->error['warning'];

} else {

$this->data['error_warning'] = '';

}

if (isset($this->error['name'])) {

$this->data['error_name'] = $this->error['name'];

} else {

$this->data['error_name'] = '';

}

$url = '';

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->data['breadcrumbs'] = array();

$this->data['breadcrumbs'][] = array(

'text' => $this->language->get('text_home'),

'href' => $this->url->link('common/home', 'token=' . $this->session->data['token'], 'SSL'),

'separator' => false

);

$this->data['breadcrumbs'][] = array(

'text' => $this->language->get('heading_title'),

'href' => $this->url->link('catalog/manufacturer', 'token=' . $this->session->data['token'] . $url, 'SSL'),

'separator' => ' :: '

);

if (!isset($this->request->get['manufacturer_id'])) {

$this->data['action'] = $this->url->link('catalog/manufacturer/insert', 'token=' . $this->session->data['token'] . $url, 'SSL');

} else {

$this->data['action'] = $this->url->link('catalog/manufacturer/update', 'token=' . $this->session->data['token'] . '&manufacturer_id=' . $this->request->get['manufacturer_id'] . $url, 'SSL');

}

$this->data['cancel'] = $this->url->link('catalog/manufacturer', 'token=' . $this->session->data['token'] . $url, 'SSL');

$this->data['token'] = $this->session->data['token'];

if (isset($this->request->get['manufacturer_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {

$manufacturer_info = $this->model_catalog_manufacturer->getManufacturer($this->request->get['manufacturer_id']);

}

$this->load->model('localisation/language');

$this->data['languages'] = $this->model_localisation_language->getLanguages();

if (isset($this->request->post['manufacturer_description'])) {

$this->data['manufacturer_description'] = $this->request->post['manufacturer_description'];

} elseif (!empty($manufacturer_info)) {

$this->data['manufacturer_description'] = $this->model_catalog_manufacturer->getManufacturerDescriptions($this->request->get['manufacturer_id']);

} else {

$this->data['manufacturer_description'] = array();

}

if (isset($this->request->post['name'])) {

$this->data['name'] = $this->request->post['name'];

} elseif (!empty($manufacturer_info)) {

$this->data['name'] = $manufacturer_info['name'];

} else {

$this->data['name'] = '';

}

$this->load->model('setting/store');

$this->data['stores'] = $this->model_setting_store->getStores();

if (isset($this->request->post['manufacturer_store'])) {

$this->data['manufacturer_store'] = $this->request->post['manufacturer_store'];

} elseif (isset($this->request->get['manufacturer_id'])) {

$this->data['manufacturer_store'] = $this->model_catalog_manufacturer->getManufacturerStores($this->request->get['manufacturer_id']);

} else {

$this->data['manufacturer_store'] = array(0);

}

if (isset($this->request->post['keyword'])) {

$this->data['keyword'] = $this->request->post['keyword'];

} elseif (!empty($manufacturer_info)) {

$this->data['keyword'] = $manufacturer_info['keyword'];

} else {

$this->data['keyword'] = '';

}

if (isset($this->request->post['image'])) {

$this->data['image'] = $this->request->post['image'];

} elseif (!empty($manufacturer_info)) {

$this->data['image'] = $manufacturer_info['image'];

} else {

$this->data['image'] = '';

}

$this->load->model('tool/image');

if (!empty($manufacturer_info) && $manufacturer_info['image'] && file_exists(DIR_IMAGE . $manufacturer_info['image'])) {

$this->data['thumb'] = $this->model_tool_image->resize($manufacturer_info['image'], 100, 100);

} else {

$this->data['thumb'] = $this->model_tool_image->resize('no_image.jpg', 100, 100);

}

$this->data['no_image'] = $this->model_tool_image->resize('no_image.jpg', 100, 100);

if (isset($this->request->post['sort_order'])) {

$this->data['sort_order'] = $this->request->post['sort_order'];

} elseif (!empty($manufacturer_info)) {

$this->data['sort_order'] = $manufacturer_info['sort_order'];

} else {

$this->data['sort_order'] = '';

}

$this->template = 'catalog/manufacturer_form.tpl';

$this->children = array(

'common/header',

'common/footer'

);

$this->response->setOutput($this->render());

}

private function validateForm() {

if (!$this->user->hasPermission('modify', 'catalog/manufacturer')) {

$this->error['warning'] = $this->language->get('error_permission');

}

if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {

$this->error['name'] = $this->language->get('error_name');

}

if (!$this->error) {

return true;

} else {

return false;

}

}

private function validateDelete() {

if (!$this->user->hasPermission('modify', 'catalog/manufacturer')) {

$this->error['warning'] = $this->language->get('error_permission');

}

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

foreach ($this->request->post['selected'] as $manufacturer_id) {

$product_total = $this->model_catalog_product->getTotalProductsByManufacturerId($manufacturer_id);

if ($product_total) {

$this->error['warning'] = sprintf($this->language->get('error_product'), $product_total);

}

}

if (!$this->error) {

return true;

} else {

return false;

}

}

}

?>

И вот такое вылазиет:

Notice: Undefined index: product_id in /var/www/***/vqmod/vqcache/vq2-admin_controller_catalog_product.php on line 63Warning: Cannot modify header information - headers already sent by (output started at /var/www/***/admin/index.php:83) in /var/www/***/vqmod/vqcache/vq2-system_engine_controller.php on line 28Warning: Cannot modify header information - headers already sent by (output started at /var/www/***/admin/index.php:83) in /var/www/***/vqmod/vqcache/vq2-system_engine_controller.php on line 29

Поделиться сообщением


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

Попробуйте перезаписать участок кода в файле admincontrollercatalogmanufacturer.php на :

public function insert() {
  $this->load->language('catalog/manufacturer');
	 $this->document->setTitle($this->language->get('heading_title'));
 
  $this->load->model('catalog/manufacturer');
  
  if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) {
   $this->model_catalog_manufacturer->addManufacturer($this->request->post);
   $this->session->data['success'] = $this->language->get('text_success');
  
   $url = '';
  
   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->redirect($this->url->link('catalog/manufacturer', 'token=' . $this->session->data['token'] . $url, 'SSL'));
  }
   
	 $this->getForm();
   }
Или удалите их папки ВКмод, файл, который отвечает за добавление кнопки "Применить" в админке...

Поделиться сообщением


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

Baco,

спасибо все заработало. тему можно закрывать

  • +1 1

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

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

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