Приветствую, у меня похожая ошибка. При конвертировании из VBulletin в phpBB выскочила ошибка на заключетльных этапах (до этого была куча ошибок, уже 3юю неделю пытаюсь сконвертировать). Я попытался разобраться, но возникла пара мемонтов.
Код ошибки:
Код: Выделить всё
SQL ERROR [ mysql4 ]
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'user_avatar_height=,user_avatar_type=1 where user_id=1665' at line 1 [1064]
SQL
update phpbb_users set user_avatar="1665_1398816272.jpg",user_avatar_width=,user_avatar_height=,user_avatar_type=1 where user_id=1665
BACKTRACE
FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()
FILE: [ROOT]/includes/db/dbal.php
LINE: 757
CALL: trigger_error()
FILE: [ROOT]/includes/db/mysql.php
LINE: 193
CALL: dbal->sql_error()
FILE: [ROOT]/install/convertors/functions_vb30.php
LINE: 224
CALL: dbal_mysql->sql_query()
FILE: [ROOT]/install/install_convert.php(1654) : eval()'d code
LINE: 2
CALL: vb_import_customavatar()
FILE: [ROOT]/install/install_convert.php
LINE: 1654
CALL: eval()
FILE: [ROOT]/install/install_convert.php
LINE: 799
CALL: install_convert->jump()
FILE: [ROOT]/install/install_convert.php
LINE: 203
CALL: install_convert->convert_data()
FILE: [ROOT]/install/index.php
LINE: 326
CALL: install_convert->main()
FILE: [ROOT]/install/index.php
LINE: 203
CALL: module->load()
Как я понял, необходимо открывать файл
functions_vb30.php и сделать там правку в строках (кстати, их 2 одинаковых - какую из них править или обе? - это первый вопрос):
Код: Выделить всё
$sql='update '.USERS_TABLE.' set user_avatar="'.$user_avatar.'",user_avatar_width='.$avatar_width.',user_avatar_height='.$avatar_height.',user_avatar_type='.$avatar_type.' where user_id='.phpbb_user_id($row['ca_user_id']);
$db->sql_query($sql);
И второй вопрос тут: где именно править? Что я заметил:
1) стоит пробел после слова
update ($sql=
'update '.USERS_TABLE.' set user_avatar="'.$user_avatar.' ...)
2) перед этим же словом стоит лишняя кавычка $sql=
'update '.USERS_TABLE ... либо наоборот после слова ее не достает?
3) в конце первой строки стоит лишняя кавычка или не хватает кавычки ... where user_id=
'.phpbb_user_id($row['ca_user_id']); ...
Благодарю за помощь