Неправильная работа сайта после удаления старых корзин.

для начала открыть файл classes/Address.php и посмотреть что там на строке 393

вот Для просмотра ссылки Войди или Зарегистрируйся
Код:
throw new PrestaShopException('Invalid address #'.(int)$id_address);

но что это, я не совсем понимаю.

получается ошибка в адресе у #7014 - но что это клиент, корзина, заказ. Как исправить?
 
чот где то не то удалил и началось
Удалил что, файлы? Вспомнить, что удалил, восстановить это. Если проблема не ушла (при этом "чайник"), то проще будет установить чистую Престу и перенести в нее данные.
 
вот Для просмотра ссылки Войди или Зарегистрируйся
Код:
throw new PrestaShopException('Invalid address #'.(int)$id_address);

но что это, я не совсем понимаю.

получается ошибка в адресе у #7014 - но что это клиент, корзина, заказ. Как исправить?
можно посмотреть в логи какого именно адреса ему не хватает или смотреть в базе все id_address и искать где ошибка.
 
Удалил что, файлы? Вспомнить, что удалил, восстановить это. Если проблема не ушла (при этом "чайник"), то проще будет установить чистую Престу и перенести в нее данные.
Удалял клиентов, при этом ставил возможность повторной регистрации.

можно посмотреть в логи какого именно адреса ему не хватает или смотреть в базе все id_address и искать где ошибка.

я так понимаю, что в базе данных нужно изменить ему адресс?
 
Удалял клиентов, при этом ставил возможность повторной регистрации.
В общем, нагуглил я такое решение:
1. Делаем бекап всей базы (обязательно)
2. Переводим Престу в режим обслуживания (Maintenance mode) – желательно.
3. Очищаем (операция truncate) таблицу ps_cart (не удаляем таблицу, а только записи)
4. Выключаем режим обслуживания.
5. Проверяем.

Если не получилось и что-то пошло не так, то см. п. 1 - есть бекап базы.

Ссылка на оригинал обсуждения (на английском) - Для просмотра ссылки Войди или Зарегистрируйся
 
В общем, нагуглил я такое решение:
1. Делаем бекап всей базы (обязательно)
2. Переводим Престу в режим обслуживания (Maintenance mode) – желательно.
3. Очищаем (операция truncate) таблицу ps_cart (не удаляем таблицу, а только записи)
4. Выключаем режим обслуживания.
5. Проверяем.

Если не получилось и что-то пошло не так, то см. п. 1 - есть бекап базы.

Ссылка на оригинал обсуждения (на английском) - Для просмотра ссылки Войди или Зарегистрируйся

В общем то проблему решил.
zabolots - спасибо за наводку, я похоже находил эту тему но не дочитал до конца.

Расскажу где собака порылась, раз уж занимался этим вопросом:
Итак, если у вас не отображаются брошенные корзины, текущие корзины и любые другие то проблема может быть как в моем случае с БД, а именно с адресом (или адресами).
Поччему это происходит - 1. Вы изменили кому то адрес 2. Клиент сам изменил адрес 3. Удалили клиента 4. удалили метод доставки - выяснить почему такое происходит, не удалось. Проблема есть на версиях как 1.5х так и 1.6х
Любое из этого может "испортить"(сначала прям по русски написал, потом заменил на испортить ;) )) записи в таблице PS_cart В следствии чего вы вероятно получите туже ошибку что и у меня.

Варианты решения:
1. Самый простой метод - идем в phpMyAdmin - и удаляем содержимое таблицы (Внимание! Только содержимое), как и описал zabolots
2. Смотрим ошибку, находим проблемного клиента в той же таблице и записываем в его адрес предварительно скопированный от рабочей записи прямо в phpMyAdmin (это если ошибка только у одного)
3. В таблице ps_cart выполняем скрипт
Код:
SELECT * FROM ps_cart AS c* FROM ps_cart AS c
LEFT JOIN ps_address AS a
ON c.id_address_delivery = a.id_address.id_address_delivery = a.id_address
WHERE a.id_address IS NULL.id_address IS NULL
и далее либо исправляем ошибки во всех найденых результатах, либо просто их удаляем.

Проверил все три способа на себе, так сказать. Все рабочие.
P.S. У себя в магазине ошибки именно исправил подменив адреса.

Большое всем спасибо, за разъяснения.
 
Назад
Сверху