Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Серт убрать или обновить.
К бд можно подключится локально через консоль (терминал сервера)
Отключить плагин который сломал или восстановить то что было ставили/удаляли недавно
Ошибка 1364 — это strict mode MySQL. Колонка username_color объявлена NOT NULL без DEFAULT, а INSERT (регистрация юзера, создание через ACP, импорт) её не передаёт.
Как вариант, на старой версии БД сервер молча подставлял пустую строку; после апгрейда БД (если был) у вас вероятно свежий MariaDB/MySQL с включённым по умолчанию STRICT_TRANS_TABLES — и то, что раньше было варнингом, стало ошибкой. Сам факт вылета 1364 доказывает, что strict mode на этом коннекте активен и XF его не сбрасывает.
Ну или же сама колонка не родная — её добавил аддон (в ядре цвет ника живёт в xf_user_group.username_css, отдельной username_color нет). Сначала выясните таблицу, тип и кто на неё ссылается:
Bash:
SELECT TABLE_NAME, COLUMN_NAME, COLUMN_TYPE, IS_NULLABLE, COLUMN_DEFAULT
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE() AND COLUMN_NAME = 'username_color';
Bash:
grep -rl username_color src/addons/
Если grep что-то нашёл и аддон жив — его entity-расширение, проставляющее дефолт в getStructure(), не применяется: стух code cache. Перестройте (php cmd.php xf-addon:rebuild <AddonId>, либо снесите internal_data/code_cache и зайдите в ACP). Если grep пуст — колонка осиротела (аддон снесли/выключили, а столбец остался: типичный кривой uninstall), её можно просто дропнуть.
Но в любом случае закройте это в схеме дефолтом — корректность INSERT не должна зависеть от того, дошло ли выполнение до сеттера. Возьмите точное определение колонки из SHOW CREATE TABLE xf_user\G (чтобы не потерять длину/charset) и допишите DEFAULT ''. Шаблон (подставьте реальную таблицу и тип):
Bash:
ALTER TABLE xf_user MODIFY username_color VARCHAR(50) NOT NULL DEFAULT '';
Пустая строка сохраняет NOT NULL-семантику и трактуется аддоном как «цвет не задан». Это правильный путь: схема становится валидной при любом sql_mode
Если grep что-то нашёл и аддон жив — его entity-расширение, проставляющее дефолт в getStructure(), не применяется: стух code cache. Перестройте (php cmd.php xf-addon:rebuild <AddonId>, либо снесите internal_data/code_cache и зайдите в ACP). Если grep пуст — колонка осиротела (аддон снесли/выключили, а столбец остался: типичный кривой uninstall), её можно просто дропнуть.
holy fucking shit, какой забористый бред
начал хорошо и по факту, закончил предложениями отпилить себе форум, в админку после сноса code_cache вы уж точно не попадете
по факту проблема в том что автор аддона действительно не проставил стандартное значение в бд, и это не вызывает проблем до тех пор пока все вставки в таблицу делаются через ORM, и аддон включен
так что решение, действительно, проставить дефолт в БД, но комментарии ллм - золото
не делайте больше так, мы специально даже пунктик правил сделали
У Вас недостаточно прав для просмотра ссылок.
Вход или Регистрация