XF 2.0 Error XF\Db\Exception: MySQL query error [1364]

Статус
В этой теме нельзя размещать новые ответы.

viper

Проверенные
Сообщения
1,061
Реакции
653
Баллы
11,115
Подскажите куда рыть, при создании подфорума сыпет такой ерор:
Код:
XF\Db\Exception: MySQL query error [1364]: Field 'atp_dont_track_this_ext' doesn't have a default value in src/XF/Db/AbstractStatement.php at line 212
содержимое файла AbstractStatement.php такое :
PHP:
protected function getException($message, $code = 0, $sqlStateCode = null)
    {
        $eType = null;
        $class = null;

        if ($sqlStateCode)
        {
            switch ($sqlStateCode)
            {
                case '23000': $eType = 'DuplicateKey'; break;
                case '40001': $eType = 'Deadlock'; break;
                case '42000': $eType = 'InvalidQuery'; break;
            }
        }

        if ($eType)
        {
            $class = 'XF\Db\\' . $eType . 'Exception';
        }
        else if (!$class)
        {
            $class = 'XF\Db\Exception';
        }

<!--строка 212-->        $e = new $class($message, $code);
        $e->sqlStateCode = $sqlStateCode;
        $e->query = $this->query;
        $e->statement = $this;

        return $e;
    }

по ошибке: Трассировка стека
HTML:
INSERT  INTO `xf_forum` (`node_id`, `allow_posting`, `allow_poll`, `moderate_threads`, `moderate_replies`, `count_messages`, `find_new`, `allowed_watch_notifications`, `default_sort_order`, `default_sort_direction`, `list_date_limit_days`, `default_prefix_id`, `require_prefix`, `min_tags`, `discussion_count`, `message_count`, `last_post_id`, `last_post_date`, `last_post_user_id`, `last_post_username`, `last_thread_title`, `last_thread_prefix_id`, `field_cache`, `prefix_cache`, `prompt_cache`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
------------

#0 src/XF/Db/Mysqli/Statement.php(196): XF\Db\AbstractStatement->getException('MySQL query err...', 1364, 'HY000')
#1 src/XF/Db/Mysqli/Statement.php(77): XF\Db\Mysqli\Statement->getException('MySQL query err...', 1364, 'HY000')
#2 src/XF/Db/AbstractAdapter.php(79): XF\Db\Mysqli\Statement->execute()
#3 src/XF/Db/AbstractAdapter.php(160): XF\Db\AbstractAdapter->query('INSERT  INTO `x...', Array)
#4 src/XF/Mvc/Entity/Entity.php(1389): XF\Db\AbstractAdapter->insert('xf_forum', Array, false)
#5 src/XF/Mvc/Entity/Entity.php(1121): XF\Mvc\Entity\Entity->_saveToSource()
#6 src/XF/Mvc/Entity/Entity.php(1139): XF\Mvc\Entity\Entity->save(true, false)
#7 src/XF/Mvc/FormAction.php(69): XF\Mvc\Entity\Entity->save(true, false)
#8 src/XF/Mvc/FormAction.php(159): XF\Mvc\FormAction->XF\Mvc\{closure}(Object(XF\Mvc\FormAction))
#9 src/XF/Admin/Controller/AbstractNode.php(110): XF\Mvc\FormAction->run()
#10 src/XF/Mvc/Dispatcher.php(249): XF\Admin\Controller\AbstractNode->actionSave(Object(XF\Mvc\ParameterBag))
#11 src/XF/Mvc/Dispatcher.php(88): XF\Mvc\Dispatcher->dispatchClass('XF:Forum', 'Save', 'json', Object(XF\Mvc\ParameterBag), 'nodes', Object(XFA\NodesIconTweak\XF\Admin\Controller\Forum), NULL)
#12 src/XF/Mvc/Dispatcher.php(41): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#13 src/XF/App.php(1894): XF\Mvc\Dispatcher->run()
#14 src/XF.php(328): XF\App->run()
#15 admin.php(13): XF::runApp('XF\\Admin\\App')
#16 {main}
Содержимое запроса
HTML:
array(4) {
  ["url"] => string(24) "/admin.php?forums/0/save"
  ["referrer"] => string(59) "https://domen.pro/admin.php?forums/add&parent_node_id=0"
  ["_GET"] => array(1) {
    ["forums/0/save"] => string(0) ""
  }
  ["_POST"] => array(18) {
    ["node"] => array(7) {
      ["title"] => string(21) "Форум групп"
      ["description"] => string(0) ""
      ["node_name"] => string(6) "groups"
      ["parent_node_id"] => string(2) "55"
      ["display_order"] => string(1) "1"
      ["display_in_list"] => string(1) "1"
      ["navigation_id"] => string(0) ""
    }
    ["xfa_nit_type"] => string(1) "0"
    ["allow_posting"] => string(1) "1"
    ["allow_poll"] => string(1) "1"
    ["moderate_threads"] => string(1) "1"
    ["count_messages"] => string(1) "1"
    ["find_new"] => string(1) "1"
    ["min_tags"] => string(1) "0"
    ["allowed_watch_notifications"] => string(3) "all"
    ["default_sort_order"] => string(14) "last_post_date"
    ["default_sort_direction"] => string(4) "desc"
    ["list_date_limit_days"] => string(1) "0"
    ["available_prefixes"] => array(12) {
      [0] => string(1) "4"
      [1] => string(1) "5"
      [2] => string(1) "6"
      [3] => string(1) "7"
      [4] => string(1) "8"
      [5] => string(1) "9"
      [6] => string(2) "10"
      [7] => string(2) "11"
      [8] => string(2) "12"
      [9] => string(2) "13"
      [10] => string(2) "14"
      [11] => string(2) "15"
    }
    ["default_prefix_id"] => string(2) "-1"
    ["_xfToken"] => string(8) "********"
    ["_xfRequestUri"] => string(38) "/admin.php?forums/add&parent_node_id=0"
    ["_xfWithData"] => string(1) "1"
    ["_xfResponseType"] => string(4) "json"
  }
}
 
Как я вам уже и писал, зачастуя это проблема из за в плагине discord. Удалите его и проверьте, он часто создает проблему.
 
Выполнить запрос
ALTER TABLE `xf_forum` DROP `atp_dont_track_this_node`,
DROP `atp_dont_track_this_ext`
Бездумно не копировать, понимать что делаете.
Возможно хвосты остались после миграции или удалении плагинов
 
Последнее редактирование:
по идее это надо сделать чтобы поставить значения по умолчанию
ALTER TABLE `xf_forum` CHANGE `atp_dont_track_this_ext` `atp_dont_track_this_ext` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT ''
Но опять же сначала сделайте бекап и пробуйте
 
Последнее редактирование:
по идее это надо сделать чтобы поставить значения по умолчанию

Но опять же сначала сделайте бекап и пробуйте
:facepalm: спасибо, сработало, по ходу ещё не вернулся из отпуска))
 
по идее это надо сделать чтобы поставить значения по умолчанию

Но опять же сначала сделайте бекап и пробуйте
Это не верный подход, так как столбец остался после удаления дополнения и его нужно просто удалить, так что не нужно после верного совета, по удалению его, давать ещё не верный.
 
Статус
В этой теме нельзя размещать новые ответы.
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу