

Hướng dẫn sửa các lỗi thường gặp khi nâng cấp cài đặt, thay giao diện, cài thêm addon cho diễn đàn Xenforo 2.
Lỗi khi tạo thêm mới BBCode - xung đột addon Telegram Post
Mã lỗi:
Nguyên nhân:
Bảng xf_bb_code của bạn đang có thêm một cột lạ tên replace_html_tg (không thuộc XenForo core). Cột này được tạo bởi addon nào đó và đang để NOT NULL nhưng không có giá trị mặc định. Khi bạn tạo BBCode mới, XenForo chỉ insert các cột chuẩn; cột lạ này không được điền nên MySQL ở chế độ strict báo lỗi 1364.
Cách khắc phục:
Kiểm tra kiểu dữ liệu cột
Nếu replace_html_tg là TEXT/MEDIUMTEXT/LONGTEXT:
Thử lưu lại BBCode trong AdminCP. Nếu vẫn lỗi, có thể cột còn bị trigger bởi một addon khi verify dữ liệu. Tạm thời bạn có thể đặt giá trị rỗng cho tất cả dòng hiện có để chắc chắn:
Lỗi khi tạo thêm mới BBCode - xung đột addon Telegram Post
Mã lỗi:
SQL:
XF\Db\Exception: MySQL query error [1364]: Field 'replace_html_tg' doesn't have a default value in src/XF/Db/AbstractStatement. Php at line 230 XF\Db\AbstractStatement->getException () in src/XF/Db/Mysqli/Statement. Php at line 207 XF\Db\Mysqli\Statement->getException () in src/XF/Db/Mysqli/Statement. Php at line 83 XF\Db\Mysqli\Statement->execute () in src/XF/Db/AbstractAdapter. Php at line 96 XF\Db\AbstractAdapter->query () in src/XF/Db/AbstractAdapter. Php at line 219 XF\Db\AbstractAdapter->insert () in src/XF/Mvc/Entity/Entity. Php at line 1572 XF\Mvc\Entity\Entity->_saveToSource () in src/XF/Mvc/Entity/Entity. Php at line 1300 XF\Mvc\Entity\Entity->save () in src/XF/Mvc/FormAction. Php at line 72 XF\Mvc\FormAction->XF\Mvc\{closure} () in src/XF/Mvc/FormAction. Php at line 190 XF\Mvc\FormAction->run () in src/XF/Admin/Controller/BbCodeController. Php at line 132 XF\Admin\Controller\BbCodeController->actionSave () in src/XF/Mvc/Dispatcher. Php at line 362 XF\Mvc\Dispatcher->dispatchClass () in src/XF/Mvc/Dispatcher. Php at line 264 XF\Mvc\Dispatcher->dispatchFromMatch () in src/XF/Mvc/Dispatcher. Php at line 121 XF\Mvc\Dispatcher->dispatchLoop () in src/XF/Mvc/Dispatcher. Php at line 63 XF\Mvc\Dispatcher->run () in src/XF/App. Php at line 2826 XF\App->run () in src/XF. Php at line 806 XF: : RunApp () in admin. Php at line 15
Nguyên nhân:
Bảng xf_bb_code của bạn đang có thêm một cột lạ tên replace_html_tg (không thuộc XenForo core). Cột này được tạo bởi addon nào đó và đang để NOT NULL nhưng không có giá trị mặc định. Khi bạn tạo BBCode mới, XenForo chỉ insert các cột chuẩn; cột lạ này không được điền nên MySQL ở chế độ strict báo lỗi 1364.
Cách khắc phục:
Kiểm tra kiểu dữ liệu cột
SQL:
DESCRIBE xf_bb_code;
Nếu replace_html_tg là TEXT/MEDIUMTEXT/LONGTEXT:
SQL:
ALTER TABLE xf_bb_code MODIFY COLUMN replace_html_tg MEDIUMTEXT NULL;
Thử lưu lại BBCode trong AdminCP. Nếu vẫn lỗi, có thể cột còn bị trigger bởi một addon khi verify dữ liệu. Tạm thời bạn có thể đặt giá trị rỗng cho tất cả dòng hiện có để chắc chắn:
Mã:
UPDATE xf_bb_code SET replace_html_tg = NULL WHERE replace_html_tg IS NULL;
Last edited by a moderator: