Undefined index: is_rotate
Всем привет, помогите разобраться, весь день искала ответ, ничего не нашла, при попытке загрузить дополнительное фото в товаре возникает предупреждение:
Notice: Undefined index: is_rotate in /var/www/u0522611/data/storage3/modification/admin/model/catalog/product.php on line 232 Warning: Cannot modify header information - headers already sent by (output started at /var/www/u0522611/data/www/gel-travel.online/admin/controller/startup/error.php:34) in /var/www/u0522611/data/www/gel-travel.online/system/library/response.php on line 36
Заранее большое спасибо. Версия OpenCart 3.0.3.2
Кусок кода из файла product.php
$this->db->query("DELETE FROM " . DB_PREFIX . "product_image WHERE product_id = '" . (int)$product_id . "'");
if (isset($data['product_image'])) {
foreach ($data['product_image'] as $product_image) {
if(isset($product_image['product_option_value_id']) && $product_image['product_option_value_id']) {
$this->db->query("INSERT INTO " . DB_PREFIX . "product_image SET product_id = '" . (int)$product_id . "', image = '" . $this->db->escape($product_image['image']) . "', sort_order = '" . (int)$product_image['sort_order'] . "', is_rotate = '" . (int)$product_image['is_rotate'] . "', product_option_value_id = '" . (int)$product_image['product_option_value_id'] . "'");
} else {
$this->db->query("INSERT INTO " . DB_PREFIX . "product_image SET product_id = '" . (int)$product_id . "', image = '" . $this->db->escape($product_image['image']) . "', sort_order = '" . (int)$product_image['sort_order'] . "', is_rotate = '" . (int)$product_image['is_rotate'] . "'");
}
}
}
Ответы (1 шт):
Вам нужно проанализировать элементы массива $data['product_image']
В каком-то из них (а может быть во всех) нет ключа is_rotate. Это выводит ошибку уровня NOTICE
Notice: Undefined index: is_rotate in /var/www/u0522611/data/storage3/modification/admin/model/catalog/product.php on line 232
Т.к. Ваша конфигурация php на отображение ошибок уровня NOTICE, сообщение выводится на экран и скрипт продолжает работу. Где-то дальше скрипт пытается вывести заголовок и спотыкается (нельзя отправить заголовок, если какой-либо текст уже выведен) и сообщает об ошибке уровня WARNING
Warning: Cannot modify header information - headers already sent by (output started at /var/www/u0522611/data/www/gel-travel.online/admin/controller/startup/error.php:34) in /var/www/u0522611/data/www/gel-travel.online/system/library/response.php on line 36
Варианты решения:
- Выключить вывод ошибок уровня
NOTICE(но это путь плохишей) - Добавить проверку ключа
is_rotate - Понять, почему нет ключа
is_rotateи искоренить проблему