Unserialize()… Error at offset… index.php

surprise
  
При переносе сайта на OpenCart с одного хостинга на другой, заметил ошибку связанную с Unserialize()… Error at offset… .

Ранее я с ней не встречался, поиск в интернете приводил к разным вариантам решениям:

  • изменить тип поля value на LONGTEXT в таблице setting и т.п.
  • выполнить команду в phpadmin DELETE FROM setting WHERE group = ‘welcome’

Кому-то это помогало, кому-то нет.

Я знаю что приводит данную ошибку и как её исправить.
  

1. Что вызывает ошибку?

 
Ошибку вызывает слишком длинная запись в поле value в таблице setting. Откройте phpadmin и посмотрите поле value с большим количеством данных, они как правило не помещаются и помечаются троеточием.

db_offset_error

(картинка кликабельная)


У меня на строке с key «welcome_module» запись в value была явно длинее других. Вот она и вызывает ошибку.
  

2. Как исправить?

 
Просто удаляем длинное содержимое value и ошибка исчезнет.
В моем случае, ошибка была из-за длинной записи модуля welcome_module, если у вас аналогичная ситуация, то, заходим в панель управления, находим проблемный модуль, удаляем и устанавливаем повторно.




Буду признателен если вы поделитесь данным постом


Ваш комментарий


Ответ в цифрах

 
© s-engineer.ru, 2012-2017 | Все права защищены