gregoro Опубліковано: 5 січня 2017 Share Опубліковано: 5 січня 2017 Добрый день! В журнале ошибок периодически вот такая вот строчка вылезает: PHP Notice: Undefined variable: product_id in /home/servername/site.ru/system/storage/modification/catalog/controller/product/product.php on line 979 Вот кусок кода, в котором упомянутая строчка находится: public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); ВОТ ЭТА ПОД номером 979 foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } Спасибо за помощь! Надіслати Поділитися на інших сайтах More sharing options...
Fedka Опубліковано: 5 січня 2017 Share Опубліковано: 5 січня 2017 (змінено) Правильно он пишет... Доходит до 979 строчки...и смотрит, что в модель передается переменная $product_id Но нигде нет, что это за переменная $product_id Тоисть нужно определить какаой значение должно попадать в эту переменную, что б потом передавалось в модель. Змінено 7 січня 2017 користувачем Skunk overquote deleted Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 5 січня 2017 Автор Share Опубліковано: 5 січня 2017 Правильно он пишет... Доходит до 979 строчки...и смотрит, что в модель передается переменная $product_id Но нигде нет, что это за переменная $product_id Тоисть нужно определить какаой значение должно попадать в эту переменную, что б потом передавалось в модель. Спасибо вам за ответ! Можно пару уточняющих вопросов? (если что, я не программист от слова совсем :-) ) 1. как это влияет на работоспособность сайта? где можно ждать сбоев? 2. откуда эта ошибка могла взяться и насколько трудно ее устранить? Надіслати Поділитися на інших сайтах More sharing options... Fedka Опубліковано: 5 січня 2017 Share Опубліковано: 5 січня 2017 Спасибо вам за ответ! Можно пару уточняющих вопросов? (если что, я не программист от слова совсем :-) ) 1. как это влияет на работоспособность сайта? где можно ждать сбоев? 2. откуда эта ошибка могла взяться и насколько трудно ее устранить? Нужно по рукам надавать тому, кто делал сайт) if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } Такая часть кода в этой строчке есть? Если нет, добавить нужно и все должно решится... Надіслати Поділитися на інших сайтах More sharing options... Slavikovna Опубліковано: 5 січня 2017 Share Опубліковано: 5 січня 2017 А может автор этого кода просто забыл передать в функцию переменную $product_id ? Надіслати Поділитися на інших сайтах More sharing options... Fedka Опубліковано: 6 січня 2017 Share Опубліковано: 6 січня 2017 А может автор этого кода просто забыл передать в функцию переменную $product_id ? Не думаю! Так как функция getRecurringDescription() стандартная...Если речь, конечно, идет о файле catalog\controller\product\product.php Если у Ваш ошибка в каком-то другом файле, тогда нужно просто передать или определить product_id Надіслати Поділитися на інших сайтах More sharing options... Slavikovna Опубліковано: 6 січня 2017 Share Опубліковано: 6 січня 2017 @Fedka, да, вы правы. Я навскидку писала, в код не смотрела. Действительно, нужно всего лишь определить $product_id. Точнее вернуть обратно этот код, т.к. явно кто-то намерено или нет его удалил. В чистом ОС этот код присутствует. Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 6 січня 2017 Автор Share Опубліковано: 6 січня 2017 (змінено) Нужно по рукам надавать тому, кто делал сайт) if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id'];} else { $product_id = 0;}Такая часть кода в этой строчке есть?Если нет, добавить нужно и все должно решится... Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Змінено 7 січня 2017 користувачем Skunk [spoiler] Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 8 січня 2017 Автор Share Опубліковано: 8 січня 2017 А это не может быть как-то связано с перелинковкой товаров? Со "связанными" товарами если быть точнее? У меня там ошибка была (связи скидывались самопроизвольно), и мне программист один исправлял. Надіслати Поділитися на інших сайтах More sharing options... Fedka Опубліковано: 9 січня 2017 Share Опубліковано: 9 січня 2017 Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Скорей всего прост оне туда вставили кусок кода и все... Если "программер" какой-то делал, тогда у него спросите, зачем он порядок поменял в этой функции... Надіслати Поділитися на інших сайтах More sharing options... martinoff95 Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 У меня похожая ошибка /system/storage/modification/catalog/controller/product/product.php on line 172 есть у кого возможность залить полный рабочий файл product.php? Заранее спасибо.)) Надіслати Поділитися на інших сайтах More sharing options... AlexDW Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 "полный рабочий файл" есть в дистрибутиве вашей версии движка но причину искать нужно не в нем, а в модификаторе который у вас его меняет Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 16 січня 2017 Автор Share Опубліковано: 16 січня 2017 Господа, спасибо большое за ответы! У меня все же нубский вопрос один остался :-) А что конкретно может не работать, если эту ошибку не устранить? Просто (тьфу-тьфу) заказ можно оформить, в этом плане ничего не глючит. Разве что притормаживает иногда (редко достаточно, при добавлении в корзину) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x / ocStore 2.x: Звіти про помилки Что может значить этот код ошибки? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
gregoro Опубліковано: 5 січня 2017 Автор Share Опубліковано: 5 січня 2017 Правильно он пишет... Доходит до 979 строчки...и смотрит, что в модель передается переменная $product_id Но нигде нет, что это за переменная $product_id Тоисть нужно определить какаой значение должно попадать в эту переменную, что б потом передавалось в модель. Спасибо вам за ответ! Можно пару уточняющих вопросов? (если что, я не программист от слова совсем :-) ) 1. как это влияет на работоспособность сайта? где можно ждать сбоев? 2. откуда эта ошибка могла взяться и насколько трудно ее устранить? Надіслати Поділитися на інших сайтах More sharing options...
Fedka Опубліковано: 5 січня 2017 Share Опубліковано: 5 січня 2017 Спасибо вам за ответ! Можно пару уточняющих вопросов? (если что, я не программист от слова совсем :-) ) 1. как это влияет на работоспособность сайта? где можно ждать сбоев? 2. откуда эта ошибка могла взяться и насколько трудно ее устранить? Нужно по рукам надавать тому, кто делал сайт) if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } Такая часть кода в этой строчке есть? Если нет, добавить нужно и все должно решится... Надіслати Поділитися на інших сайтах More sharing options... Slavikovna Опубліковано: 5 січня 2017 Share Опубліковано: 5 січня 2017 А может автор этого кода просто забыл передать в функцию переменную $product_id ? Надіслати Поділитися на інших сайтах More sharing options... Fedka Опубліковано: 6 січня 2017 Share Опубліковано: 6 січня 2017 А может автор этого кода просто забыл передать в функцию переменную $product_id ? Не думаю! Так как функция getRecurringDescription() стандартная...Если речь, конечно, идет о файле catalog\controller\product\product.php Если у Ваш ошибка в каком-то другом файле, тогда нужно просто передать или определить product_id Надіслати Поділитися на інших сайтах More sharing options... Slavikovna Опубліковано: 6 січня 2017 Share Опубліковано: 6 січня 2017 @Fedka, да, вы правы. Я навскидку писала, в код не смотрела. Действительно, нужно всего лишь определить $product_id. Точнее вернуть обратно этот код, т.к. явно кто-то намерено или нет его удалил. В чистом ОС этот код присутствует. Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 6 січня 2017 Автор Share Опубліковано: 6 січня 2017 (змінено) Нужно по рукам надавать тому, кто делал сайт) if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id'];} else { $product_id = 0;}Такая часть кода в этой строчке есть?Если нет, добавить нужно и все должно решится... Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Змінено 7 січня 2017 користувачем Skunk [spoiler] Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 8 січня 2017 Автор Share Опубліковано: 8 січня 2017 А это не может быть как-то связано с перелинковкой товаров? Со "связанными" товарами если быть точнее? У меня там ошибка была (связи скидывались самопроизвольно), и мне программист один исправлял. Надіслати Поділитися на інших сайтах More sharing options... Fedka Опубліковано: 9 січня 2017 Share Опубліковано: 9 січня 2017 Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Скорей всего прост оне туда вставили кусок кода и все... Если "программер" какой-то делал, тогда у него спросите, зачем он порядок поменял в этой функции... Надіслати Поділитися на інших сайтах More sharing options... martinoff95 Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 У меня похожая ошибка /system/storage/modification/catalog/controller/product/product.php on line 172 есть у кого возможность залить полный рабочий файл product.php? Заранее спасибо.)) Надіслати Поділитися на інших сайтах More sharing options... AlexDW Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 "полный рабочий файл" есть в дистрибутиве вашей версии движка но причину искать нужно не в нем, а в модификаторе который у вас его меняет Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 16 січня 2017 Автор Share Опубліковано: 16 січня 2017 Господа, спасибо большое за ответы! У меня все же нубский вопрос один остался :-) А что конкретно может не работать, если эту ошибку не устранить? Просто (тьфу-тьфу) заказ можно оформить, в этом плане ничего не глючит. Разве что притормаживает иногда (редко достаточно, при добавлении в корзину) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x / ocStore 2.x: Звіти про помилки Что может значить этот код ошибки? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Slavikovna Опубліковано: 5 січня 2017 Share Опубліковано: 5 січня 2017 А может автор этого кода просто забыл передать в функцию переменную $product_id ? Надіслати Поділитися на інших сайтах More sharing options... Fedka Опубліковано: 6 січня 2017 Share Опубліковано: 6 січня 2017 А может автор этого кода просто забыл передать в функцию переменную $product_id ? Не думаю! Так как функция getRecurringDescription() стандартная...Если речь, конечно, идет о файле catalog\controller\product\product.php Если у Ваш ошибка в каком-то другом файле, тогда нужно просто передать или определить product_id Надіслати Поділитися на інших сайтах More sharing options... Slavikovna Опубліковано: 6 січня 2017 Share Опубліковано: 6 січня 2017 @Fedka, да, вы правы. Я навскидку писала, в код не смотрела. Действительно, нужно всего лишь определить $product_id. Точнее вернуть обратно этот код, т.к. явно кто-то намерено или нет его удалил. В чистом ОС этот код присутствует. Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 6 січня 2017 Автор Share Опубліковано: 6 січня 2017 (змінено) Нужно по рукам надавать тому, кто делал сайт) if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id'];} else { $product_id = 0;}Такая часть кода в этой строчке есть?Если нет, добавить нужно и все должно решится... Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Змінено 7 січня 2017 користувачем Skunk [spoiler] Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 8 січня 2017 Автор Share Опубліковано: 8 січня 2017 А это не может быть как-то связано с перелинковкой товаров? Со "связанными" товарами если быть точнее? У меня там ошибка была (связи скидывались самопроизвольно), и мне программист один исправлял. Надіслати Поділитися на інших сайтах More sharing options... Fedka Опубліковано: 9 січня 2017 Share Опубліковано: 9 січня 2017 Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Скорей всего прост оне туда вставили кусок кода и все... Если "программер" какой-то делал, тогда у него спросите, зачем он порядок поменял в этой функции... Надіслати Поділитися на інших сайтах More sharing options... martinoff95 Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 У меня похожая ошибка /system/storage/modification/catalog/controller/product/product.php on line 172 есть у кого возможность залить полный рабочий файл product.php? Заранее спасибо.)) Надіслати Поділитися на інших сайтах More sharing options... AlexDW Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 "полный рабочий файл" есть в дистрибутиве вашей версии движка но причину искать нужно не в нем, а в модификаторе который у вас его меняет Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 16 січня 2017 Автор Share Опубліковано: 16 січня 2017 Господа, спасибо большое за ответы! У меня все же нубский вопрос один остался :-) А что конкретно может не работать, если эту ошибку не устранить? Просто (тьфу-тьфу) заказ можно оформить, в этом плане ничего не глючит. Разве что притормаживает иногда (редко достаточно, при добавлении в корзину) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x / ocStore 2.x: Звіти про помилки Что может значить этот код ошибки? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Fedka Опубліковано: 6 січня 2017 Share Опубліковано: 6 січня 2017 А может автор этого кода просто забыл передать в функцию переменную $product_id ? Не думаю! Так как функция getRecurringDescription() стандартная...Если речь, конечно, идет о файле catalog\controller\product\product.php Если у Ваш ошибка в каком-то другом файле, тогда нужно просто передать или определить product_id Надіслати Поділитися на інших сайтах More sharing options... Slavikovna Опубліковано: 6 січня 2017 Share Опубліковано: 6 січня 2017 @Fedka, да, вы правы. Я навскидку писала, в код не смотрела. Действительно, нужно всего лишь определить $product_id. Точнее вернуть обратно этот код, т.к. явно кто-то намерено или нет его удалил. В чистом ОС этот код присутствует. Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 6 січня 2017 Автор Share Опубліковано: 6 січня 2017 (змінено) Нужно по рукам надавать тому, кто делал сайт) if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id'];} else { $product_id = 0;}Такая часть кода в этой строчке есть?Если нет, добавить нужно и все должно решится... Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Змінено 7 січня 2017 користувачем Skunk [spoiler] Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 8 січня 2017 Автор Share Опубліковано: 8 січня 2017 А это не может быть как-то связано с перелинковкой товаров? Со "связанными" товарами если быть точнее? У меня там ошибка была (связи скидывались самопроизвольно), и мне программист один исправлял. Надіслати Поділитися на інших сайтах More sharing options... Fedka Опубліковано: 9 січня 2017 Share Опубліковано: 9 січня 2017 Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Скорей всего прост оне туда вставили кусок кода и все... Если "программер" какой-то делал, тогда у него спросите, зачем он порядок поменял в этой функции... Надіслати Поділитися на інших сайтах More sharing options... martinoff95 Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 У меня похожая ошибка /system/storage/modification/catalog/controller/product/product.php on line 172 есть у кого возможность залить полный рабочий файл product.php? Заранее спасибо.)) Надіслати Поділитися на інших сайтах More sharing options... AlexDW Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 "полный рабочий файл" есть в дистрибутиве вашей версии движка но причину искать нужно не в нем, а в модификаторе который у вас его меняет Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 16 січня 2017 Автор Share Опубліковано: 16 січня 2017 Господа, спасибо большое за ответы! У меня все же нубский вопрос один остался :-) А что конкретно может не работать, если эту ошибку не устранить? Просто (тьфу-тьфу) заказ можно оформить, в этом плане ничего не глючит. Разве что притормаживает иногда (редко достаточно, при добавлении в корзину) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x / ocStore 2.x: Звіти про помилки Что может значить этот код ошибки? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich
Slavikovna Опубліковано: 6 січня 2017 Share Опубліковано: 6 січня 2017 @Fedka, да, вы правы. Я навскидку писала, в код не смотрела. Действительно, нужно всего лишь определить $product_id. Точнее вернуть обратно этот код, т.к. явно кто-то намерено или нет его удалил. В чистом ОС этот код присутствует. Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 6 січня 2017 Автор Share Опубліковано: 6 січня 2017 (змінено) Нужно по рукам надавать тому, кто делал сайт) if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id'];} else { $product_id = 0;}Такая часть кода в этой строчке есть?Если нет, добавить нужно и все должно решится... Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Змінено 7 січня 2017 користувачем Skunk [spoiler] Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 8 січня 2017 Автор Share Опубліковано: 8 січня 2017 А это не может быть как-то связано с перелинковкой товаров? Со "связанными" товарами если быть точнее? У меня там ошибка была (связи скидывались самопроизвольно), и мне программист один исправлял. Надіслати Поділитися на інших сайтах More sharing options... Fedka Опубліковано: 9 січня 2017 Share Опубліковано: 9 січня 2017 Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Скорей всего прост оне туда вставили кусок кода и все... Если "программер" какой-то делал, тогда у него спросите, зачем он порядок поменял в этой функции... Надіслати Поділитися на інших сайтах More sharing options... martinoff95 Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 У меня похожая ошибка /system/storage/modification/catalog/controller/product/product.php on line 172 есть у кого возможность залить полный рабочий файл product.php? Заранее спасибо.)) Надіслати Поділитися на інших сайтах More sharing options... AlexDW Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 "полный рабочий файл" есть в дистрибутиве вашей версии движка но причину искать нужно не в нем, а в модификаторе который у вас его меняет Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 16 січня 2017 Автор Share Опубліковано: 16 січня 2017 Господа, спасибо большое за ответы! У меня все же нубский вопрос один остался :-) А что конкретно может не работать, если эту ошибку не устранить? Просто (тьфу-тьфу) заказ можно оформить, в этом плане ничего не глючит. Разве что притормаживает иногда (редко достаточно, при добавлении в корзину) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x / ocStore 2.x: Звіти про помилки Что может значить этот код ошибки?
gregoro Опубліковано: 6 січня 2017 Автор Share Опубліковано: 6 січня 2017 (змінено) Нужно по рукам надавать тому, кто делал сайт) if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id'];} else { $product_id = 0;}Такая часть кода в этой строчке есть?Если нет, добавить нужно и все должно решится... Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Змінено 7 січня 2017 користувачем Skunk [spoiler] Надіслати Поділитися на інших сайтах More sharing options...
gregoro Опубліковано: 8 січня 2017 Автор Share Опубліковано: 8 січня 2017 А это не может быть как-то связано с перелинковкой товаров? Со "связанными" товарами если быть точнее? У меня там ошибка была (связи скидывались самопроизвольно), и мне программист один исправлял. Надіслати Поділитися на інших сайтах More sharing options...
Fedka Опубліковано: 9 січня 2017 Share Опубліковано: 9 січня 2017 Такие строчки есть, но они располагаются ниже по коду... Вот скопировал кусок, который Notepad++ подсветил как единый :-) public function getRecurringDescription() { $this->language->load('product/product'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $data['catprod'] = array(); $product_category = $this->model_catalog_product->getCategories($product_id); foreach ($product_category as $prodcat) { $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']); if ($category_info) { $data['catprod'][] = array( 'name' => $category_info['name'], 'href' => $this->url->link('product/category', 'path=' . $category_info['category_id']) ); } } if (isset($this->request->post['product_id'])) { $product_id = $this->request->post['product_id']; } else { $product_id = 0; } if (isset($this->request->post['recurring_id'])) { $recurring_id = $this->request->post['recurring_id']; } else { $recurring_id = 0; } if (isset($this->request->post['quantity'])) { $quantity = $this->request->post['quantity']; } else { $quantity = 1; } $product_info = $this->model_catalog_product->getProduct($product_id); $recurring_info = $this->model_catalog_product->getProfile($product_id, $recurring_id); $json = array(); if ($product_info && $recurring_info) { if (!$json) { $frequencies = array( 'day' => $this->language->get('text_day'), 'week' => $this->language->get('text_week'), 'semi_month' => $this->language->get('text_semi_month'), 'month' => $this->language->get('text_month'), 'year' => $this->language->get('text_year'), ); if ($recurring_info['trial_status'] == 1) { $price = $this->currency->format($this->tax->calculate($recurring_info['trial_price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); $trial_text = sprintf($this->language->get('text_trial_description'), $price, $recurring_info['trial_cycle'], $frequencies[$recurring_info['trial_frequency']], $recurring_info['trial_duration']) . ' '; } else { $trial_text = ''; } $price = $this->currency->format($this->tax->calculate($recurring_info['price'] * $quantity, $product_info['tax_class_id'], $this->config->get('config_tax'))); if ($recurring_info['duration']) { $text = $trial_text . sprintf($this->language->get('text_payment_description'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } else { $text = $trial_text . sprintf($this->language->get('text_payment_cancel'), $price, $recurring_info['cycle'], $frequencies[$recurring_info['frequency']], $recurring_info['duration']); } $json['success'] = $text; } } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } Скорей всего прост оне туда вставили кусок кода и все... Если "программер" какой-то делал, тогда у него спросите, зачем он порядок поменял в этой функции... Надіслати Поділитися на інших сайтах More sharing options... martinoff95 Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 У меня похожая ошибка /system/storage/modification/catalog/controller/product/product.php on line 172 есть у кого возможность залить полный рабочий файл product.php? Заранее спасибо.)) Надіслати Поділитися на інших сайтах More sharing options... AlexDW Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 "полный рабочий файл" есть в дистрибутиве вашей версии движка но причину искать нужно не в нем, а в модификаторе который у вас его меняет Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 16 січня 2017 Автор Share Опубліковано: 16 січня 2017 Господа, спасибо большое за ответы! У меня все же нубский вопрос один остался :-) А что конкретно может не работать, если эту ошибку не устранить? Просто (тьфу-тьфу) заказ можно оформить, в этом плане ничего не глючит. Разве что притормаживает иногда (редко достаточно, при добавлении в корзину) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
martinoff95 Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 У меня похожая ошибка /system/storage/modification/catalog/controller/product/product.php on line 172 есть у кого возможность залить полный рабочий файл product.php? Заранее спасибо.)) Надіслати Поділитися на інших сайтах More sharing options...
AlexDW Опубліковано: 16 січня 2017 Share Опубліковано: 16 січня 2017 "полный рабочий файл" есть в дистрибутиве вашей версии движка но причину искать нужно не в нем, а в модификаторе который у вас его меняет Надіслати Поділитися на інших сайтах More sharing options... gregoro Опубліковано: 16 січня 2017 Автор Share Опубліковано: 16 січня 2017 Господа, спасибо большое за ответы! У меня все же нубский вопрос один остался :-) А что конкретно может не работать, если эту ошибку не устранить? Просто (тьфу-тьфу) заказ можно оформить, в этом плане ничего не глючит. Разве что притормаживает иногда (редко достаточно, при добавлении в корзину) Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0
gregoro Опубліковано: 16 січня 2017 Автор Share Опубліковано: 16 січня 2017 Господа, спасибо большое за ответы! У меня все же нубский вопрос один остался :-) А что конкретно может не работать, если эту ошибку не устранить? Просто (тьфу-тьфу) заказ можно оформить, в этом плане ничего не глючит. Разве что притормаживает иногда (редко достаточно, при добавлении в корзину) Надіслати Поділитися на інших сайтах More sharing options...
Recommended Posts