virtuemart при добавлении товара белый экран-пустая страница
При входе в форму добавления товара virtuemart радует белым экраном ( в браузер выводится пустой html-документ). Обычно является это признаком fatal error в PHP. Заглядываем в LOG-файл - действительно:
[error] PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 49 bytes) in …/includes/database.php on line 491
Итак, при выводе “пустой” страницы добавления товара скрипту не хватает памяти (32 МБ, конечно не так уж много, но куда??). Что самое интересное, при редактировании товара (страница та же, только установлен параметр product_id) ошибка не возникает. И ещё, раньше такого вроде не было.
В database.php на 491 строке ничего особо интересного нет - подсказка, что выводится LIST (чего - не совсем ясно)… Элементы “складируются” в массив.. и на очередном не хватает памяти.
Предварительная диагностика подсказывает, что “глюк” из-за большого количества товаров (~22 тыс). Протестировал с “обрезанной” до 7 тыс товаров - всё работает. И правда, в товарах проблема.
Смотрим в сторону файла с формой добавления/редактирования товара
administrator/components/com_virtuemart/html/product.product_form.php
Но как связана страница добавления/редактирования одного товара с количеством товаров? Точно! Есть ведь связанные товары.. Большой multiselect связанных товаров и правда содержит все записи.. однако он выводится и при редактировании товаров.. Странно.. но всякое бывает - проверяем (закомментировать строчку с выводом мультиселекта).. Ан нет.. не влияет.
Ладно.. пробуем по-другому ищем product_id (ведь для имеющегося товара все в порядке.. белый экран только при добавлении Нового товара). Из “сомнительных” (cомнительное в смысле без проверки на “корректность” product_id) мест использования этой переменной видим такое:
$db_items = $ps_product->items_sql($product_id);
После которого идет вывод формы с подстановкой значений.
Проверяем совсем наглым образом - убираем эту строку и последующие, и открываем страницу добавления товара - Открывается! Добавляем строку (без продолжения) - ошибка.
Решение проблемы пустого экрана при добавлении товара в Virtuemart
В общем, решил добавлением проверки на “вшивость” переменной product_id:
if ($product_id) $db_items = $ps_product->items_sql($product_id); // зато работает.
Метки: php, virtuemart
Была такого же рода проблема, товар вообще не хотел выводится на страницу, выдавало белый экран в браузере и в логах нигде не отражалась ошибка. После 3 часов мук, всё решилось включением модуля PHP5.2.10 в настройках хостинга.
У меня проблема , добовляю новый товар virtuemart, а он не сохраняется. В чем может быть проблема?
Соня, скорее всего проблема в некорректной настройке виртуемарта, либо в задании некорректных свойств товара (т.е. товар не проходит валидацию). Быть может выдаётся какое-нибудь сообщение об ошибке?
Всем доброго времени суток.Проблема в добавлении категории и товара .При нажатии кнопки “создать” появляется предыдущая страничка просто в текстовом формате .и не пишет никакой ошибки.Помогите разобраться в этой ситуации .С начало работало потом создал 4 товара и перестало работать .Правда до этого пробывал залить модуль типа слайдера ,но он так и не заработал.За ранее всем спасибо.