Quicksdk Posted January 21, 2015 Report Share Posted January 21, 2015 Появилась проблема, которая мучает уже очень долго и много... Мне нужно переконвертировать всю БД из latin1 в UTF-8, пробовал с sypex dumper, но он не доходя до конца выдает ошибку Есть проверенный способ конвертации всей БД? К примеру сейчас выглядит так, После конвертации (неполной с sypex dumper), слова отображает нормально, но форум в целом не открывается и показывает ошибку Driver Error, мол ошибка с базой данных Сейчас с учетом этой проблемы, один хостинг на котором я сейчас располагаюсь отображает все ок (непонятным мне образом), другой же на который хочу перейти выдает крякозябры при открытии форума, и решение мое добавление в htaccess: AddDefaultCharset utf-8 Quote Link to comment Share on other sites More sharing options...
WOLF Posted January 21, 2015 Report Share Posted January 21, 2015 <? $dbhost = #sql_host $dbuser = #sql_user $dbpass = #sql_pass $dbname = #sql_database header('Content-type: text/plain'); $dbconn = mysql_connect($dbhost, $dbuser, $dbpass) or die( mysql_error() ); $db = mysql_select_db($dbname) or die( mysql_error() ); $sql = "ALTER DATABASE `".$dbname."` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci"; $result = mysql_query($sql) or die( mysql_error() ); print "Database changed to UTF-8.n"; $sql = 'SHOW TABLES'; $result = mysql_query($sql) or die( mysql_error() ); while ( $row = mysql_fetch_row($result) ) { $table = mysql_real_escape_string($row[0]); $sql = "ALTER TABLE $table DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci, CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci"; mysql_query($sql) or die( mysql_error() ); print "$table changed to UTF-8.n"; } mysql_close($dbconn); ?> Quote Link to comment Share on other sites More sharing options...
Quicksdk Posted January 21, 2015 Author Report Share Posted January 21, 2015 Без перекодировки выглядит таким образом (выкладываю, потому что кому-нибудь точно пригодится) далее добавляю в htaccess: AddDefaultCharset utf-8 и все окей. Теперь же появилось много Warnings: Что с ними делать? php_flag display_errors off в htaccess не помогает Quote Link to comment Share on other sites More sharing options...
Quicksdk Posted January 21, 2015 Author Report Share Posted January 21, 2015 Без перекодировки выглядит таким образом (выкладываю, потому что кому-нибудь точно пригодится) далее добавляю в htaccess: AddDefaultCharset utf-8 и все окей. Теперь же появилось много Warnings: Что с ними делать? php_flag display_errors off в htaccess не помогает Прогнал базу через ваш скрипт, теперь БД действительно полностью стала UTF-8, но это не помогло, крякозябры остались. Попробовал в conf_global.php поменять latin1 на utf-8 выдает такое Итак, попробую подытожить, что у меня вообще за ситуация. 1. Если в conf_global.php оставить latin1 и через .htacces добавить AddDefaultCharset utf-8, то форум функционирует, но выдает много Warnings - (но на самом деле это не лучший способ решения проблемы, но уже хоть что-то) 2. После конвертации БД в UTF-8 - крякозябры остались и при отображении и в phpmyadmin Надеюсь на вашу помощь форумчане, уже весь мозг съел этот форум... Повторюсь, на старом хостинге без AddDefaultCharset utf-8 и без каких-либо заморочек все работает, хотя в phpmyadmin тоже крякозябры! Quote Link to comment Share on other sites More sharing options...
Quicksdk Posted January 22, 2015 Author Report Share Posted January 22, 2015 UP... нуждаюсь в помощи Quote Link to comment Share on other sites More sharing options...
Quicksdk Posted January 25, 2015 Author Report Share Posted January 25, 2015 up Quote Link to comment Share on other sites More sharing options...
bsnet Posted January 27, 2015 Report Share Posted January 27, 2015 Можно попробовать сделать дамп в phpMyAdmin Потом открыть этот дамп скажем в EditPlus, заменить везде значения latin1 на правильные значение utf, сохранить файл в кодировке utf-8 Удалить старую базу форума в phpmyadmin, создать новую в utf. И восстановиться из файла с базой, который редактировали Такие манипуляции с форумами на phpBB у меня прокатывали =) Quote Link to comment Share on other sites More sharing options...
Quicksdk Posted January 28, 2015 Author Report Share Posted January 28, 2015 Можно попробовать сделать дамп в phpMyAdmin Потом открыть этот дамп скажем в EditPlus, заменить везде значения latin1 на правильные значение utf, сохранить файл в кодировке utf-8 Удалить старую базу форума в phpmyadmin, создать новую в utf. И восстановиться из файла с базой, который редактировали Такие манипуляции с форумами на phpBB у меня прокатывали =) а как я буду в ручную везде менять значения? их же там огромное количество Quote Link to comment Share on other sites More sharing options...
pcmist Posted January 28, 2015 Report Share Posted January 28, 2015 Неужели способ во втором сообщении от WOLF не помог? Quote Link to comment Share on other sites More sharing options...
bsnet Posted January 28, 2015 Report Share Posted January 28, 2015 а как я буду в ручную везде менять значения? их же там огромное количествоНайти определенное значение и заменить на нужное, массово Хотя если такие вопросы задаёте, думаю не стоит тогда делать. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.