XenForo Importers

XenForo Importers 1.6.1

Нет прав для скачивания
Владелец директории должен совпадать с пользователем /* не совсем и не всегда, но тут это не принципиально */, под которым запущен php, тогда последний может прочитать директорию. Права достаточно 0755.
 
Здравствуйте. Пытаюсь перейти с VB4.1 с блогом на XF 2.1.7. Ошибка вылезла после этапа импорта пользователей.
Вылетает ошибка:
Код:
XF\Db\InvalidQueryException: MySQL statement prepare error [1064]: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'deletionlog.userid AS deleteuserid, deletionlog.username AS deleteusername, ' at line 3 in src/XF/Db/AbstractStatement.php at line 228
XF\Db\AbstractStatement->getException() in src/XF/Db/Mysqli/Statement.php at line 196
XF\Db\Mysqli\Statement->getException() in src/XF/Db/Mysqli/Statement.php at line 39
XF\Db\Mysqli\Statement->prepare() in src/XF/Db/Mysqli/Statement.php at line 54
XF\Db\Mysqli\Statement->execute() in src/XF/Db/AbstractAdapter.php at line 94
XF\Db\AbstractAdapter->query() in src/XF/Db/AbstractAdapter.php at line 165
XF\Db\AbstractAdapter->fetchAllKeyed() in src/addons/XFI/Import/Importer/vBulletin.php at line 3063
XFI\Import\Importer\vBulletin->getThreads() in src/addons/XFI/Import/Importer/vBulletin.php at line 2962
XFI\Import\Importer\vBulletin->stepThreads() in src/XF/Import/Runner.php at line 231
XF\Import\Runner->runStep() in src/XF/Import/Runner.php at line 59
XF\Import\Runner->run() in src/XF/Admin/Controller/Import.php at line 234
XF\Admin\Controller\Import->actionRun() in src/XF/Mvc/Dispatcher.php at line 350
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 257
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 113
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 55
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2184
XF\App->run() in src/XF.php at line 391
XF::runApp() in admin.php at line 13
 
Обновить импортер, в этой версии было исправлено
 
XFI\Import\Importer\vBulletin
Найти на 3046 строке:
IF(user.username IS NULL, thread.postusername, user.username) AS postusername
И заменить на
IF(user.username IS NULL, thread.postusername, user.username) AS postusername,
Пропущена запятая там
 
Найти на 3046 строке:
IF(user.username IS NULL, thread.postusername, user.username) AS postusername
И заменить на
IF(user.username IS NULL, thread.postusername, user.username) AS postusername,
Пропущена запятая там
Спасибо, помогло.
Но дальше при импорте вылезло вот такое...
Прошу помочь , вводные данные те же VB4 to XF 2.1.7, вылезла вот такая ошибка
Код:
XF\Db\Exception: MySQL query error [1406]: Data too long for column 'delete_reason' at row 1 in src/XF/Db/AbstractStatement.php at line 228
XF\Db\AbstractStatement->getException() in src/XF/Db/Mysqli/Statement.php at line 196
XF\Db\Mysqli\Statement->getException() in src/XF/Db/Mysqli/Statement.php at line 77
XF\Db\Mysqli\Statement->execute() in src/XF/Db/AbstractAdapter.php at line 94
XF\Db\AbstractAdapter->query() in src/XF/Db/AbstractAdapter.php at line 218
XF\Db\AbstractAdapter->insert() in src/XF/Import/Data/EntityEmulator.php at line 517
XF\Import\Data\EntityEmulator->insertStateRecord() in src/XF/Import/Data/AbstractEmulatedData.php at line 85
XF\Import\Data\AbstractEmulatedData->insertStateRecord() in src/XF/Import/Data/Post.php at line 35
XF\Import\Data\Post->postSave() in src/XF/Import/Data/AbstractData.php at line 136
XF\Import\Data\AbstractData->save() in src/XF/Import/Importer/StepPostsTrait.php at line 139
XFI\Import\Importer\vBulletin->stepPosts() in src/XF/Import/Runner.php at line 231
XF\Import\Runner->runStep() in src/XF/Import/Runner.php at line 59
XF\Import\Runner->run() in src/XF/Admin/Controller/Import.php at line 234
XF\Admin\Controller\Import->actionRun() in src/XF/Mvc/Dispatcher.php at line 350
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 257
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 113
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 55
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2184
XF\App->run() in src/XF.php at line 391
XF::runApp() in admin.php at line 13
 
Можно сделать костыль перед импортом в базу данных выполнить запрос:
alter table xf_deletion_log modify delete_reason text not null default '';
Выполнить запрос, а после импорта данных в конце выполнить на возвращение к движковой структуре
alter table xf_deletion_log modify varchar(100) not null default '';
 
Можно сделать костыль перед импортом в базу данных выполнить запрос:
alter table xf_deletion_log modify delete_reason text not null default '';
Выполнить запрос, а после импорта данных в конце выполнить на возвращение к движковой структуре
alter table xf_deletion_log modify varchar(100) not null default '';
Выполнил запрос, импорт продолжился. А можно вопрос, что этот костыль делает? Если я правильно понял, то он не убирает проблему с ошибкой, а только скрывает её что бы импорт мог продолжать работать если что-то пошло не так
 
Этот запрос изменяет тип данных и позволяет внести в причину в которой более 100 символов. Т.е причина переносится полная, если на уровне кода при переносе это сделать ограничение, которая бы обрезала символы то не вся причина могла быть указана. Потом мы просто возвращаем это ограничение в движке как оно должно быть
 
Captain прошу прощение за мою безграмотность, но вылезла еще одна ошибка
Код:
ErrorException: [E_WARNING] Illegal string offset 'ipaddress' in src/addons/XFI/Import/Importer/vBulletinBlogTrait.php at line 352
XF::handlePhpError() in src/addons/XFI/Import/Importer/vBulletinBlogTrait.php at line 352
XFI\Import\Importer\vBulletin4WithBlog->stepBlogEntries() in src/XF/Import/Runner.php at line 231
XF\Import\Runner->runStep() in src/XF/Import/Runner.php at line 59
XF\Import\Runner->run() in src/XF/Admin/Controller/Import.php at line 234
XF\Admin\Controller\Import->actionRun() in src/XF/Mvc/Dispatcher.php at line 350
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 257
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 113
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 55
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2184
XF\App->run() in src/XF.php at line 391
XF::runApp() in admin.php at line 13
 
Да какая безграмотность, если это всё баги импортёра
 
Да какая безграмотность, если это всё баги импортёра
а что можно сделать в этом случае? Безграмотность - в том что не знаю как решить проблему, а вы уже как минимум 3 раза подсказали мне
 
src/addons/XFI/Import/Importer/vBulletin.php
На 2068 строчки найти
$import->setLoggedIp($this->getLoggedIp($visitorMessage['ipaddress']));
и закомментировать
// $import->setLoggedIp($this->getLoggedIp($visitorMessage['ipaddress']));
 
а что можно сделать в этом случае? Безграмотность - в том что не знаю как решить проблему, а вы уже как минимум 3 раза подсказали мне
Не обязательно и знать, из коробки должно правильно работать что бы такого не возникало у людей, а не решать проблемы и искать их решение.
Тогда вернуть назад строчку
src/addons/XFI/Import/Data/vBulletinBlogEntry.php
Найти:
$postHandler->setLoggedIp($this->loggedIp);
заменить на
// $postHandler->setLoggedIp($this->loggedIp);
 
  • Мне нравится
Реакции: Hope
Тогда вернуть назад строчку
src/addons/XFI/Import/Data/vBulletinBlogEntry.php
Найти:
$postHandler->setLoggedIp($this->loggedIp);
заменить на
// $postHandler->setLoggedIp($this->loggedIp);
не помогло(( пробовал и с двумя закомментированными строками, тот же результат
 
Via, скинь полный лог ошибки с шапкой
 
Via, скинь полный лог ошибки с шапкой
Код:
ErrorException: [E_WARNING] Illegal string offset 'ipaddress' in src/addons/XFI/Import/Importer/vBulletinBlogTrait.php at line 352
XF::handlePhpError() in src/addons/XFI/Import/Importer/vBulletinBlogTrait.php at line 352
XFI\Import\Importer\vBulletin4WithBlog->stepBlogEntries() in src/XF/Import/Runner.php at line 231
XF\Import\Runner->runStep() in src/XF/Import/Runner.php at line 59
XF\Import\Runner->run() in src/XF/Admin/Controller/Import.php at line 234
XF\Admin\Controller\Import->actionRun() in src/XF/Mvc/Dispatcher.php at line 350
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 257
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 113
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 55
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2184
XF\App->run() in src/XF.php at line 391
XF::runApp() in admin.php at line 13
это все что показано
 
В шапке должно быть и перед ним шапка самой ошибки
Сгенерирована пользователем:
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу