Quicksdk Опубликовано 21 января, 2015 Поделиться Опубликовано 21 января, 2015 Появилась проблема, которая мучает уже очень долго и много... Мне нужно переконвертировать всю БД из latin1 в UTF-8, пробовал с sypex dumper, но он не доходя до конца выдает ошибку Есть проверенный способ конвертации всей БД? К примеру сейчас выглядит так, После конвертации (неполной с sypex dumper), слова отображает нормально, но форум в целом не открывается и показывает ошибку Driver Error, мол ошибка с базой данных Сейчас с учетом этой проблемы, один хостинг на котором я сейчас располагаюсь отображает все ок (непонятным мне образом), другой же на который хочу перейти выдает крякозябры при открытии форума, и решение мое добавление в htaccess: AddDefaultCharset utf-8 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
WOLF Опубликовано 21 января, 2015 Поделиться Опубликовано 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); ?> Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Quicksdk Опубликовано 21 января, 2015 Автор Поделиться Опубликовано 21 января, 2015 Без перекодировки выглядит таким образом (выкладываю, потому что кому-нибудь точно пригодится) далее добавляю в htaccess: AddDefaultCharset utf-8 и все окей. Теперь же появилось много Warnings: Что с ними делать? php_flag display_errors off в htaccess не помогает Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Quicksdk Опубликовано 21 января, 2015 Автор Поделиться Опубликовано 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 тоже крякозябры! Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Quicksdk Опубликовано 22 января, 2015 Автор Поделиться Опубликовано 22 января, 2015 UP... нуждаюсь в помощи Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Quicksdk Опубликовано 25 января, 2015 Автор Поделиться Опубликовано 25 января, 2015 up Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
bsnet Опубликовано 27 января, 2015 Поделиться Опубликовано 27 января, 2015 Можно попробовать сделать дамп в phpMyAdmin Потом открыть этот дамп скажем в EditPlus, заменить везде значения latin1 на правильные значение utf, сохранить файл в кодировке utf-8 Удалить старую базу форума в phpmyadmin, создать новую в utf. И восстановиться из файла с базой, который редактировали Такие манипуляции с форумами на phpBB у меня прокатывали =) Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Quicksdk Опубликовано 28 января, 2015 Автор Поделиться Опубликовано 28 января, 2015 Можно попробовать сделать дамп в phpMyAdmin Потом открыть этот дамп скажем в EditPlus, заменить везде значения latin1 на правильные значение utf, сохранить файл в кодировке utf-8 Удалить старую базу форума в phpmyadmin, создать новую в utf. И восстановиться из файла с базой, который редактировали Такие манипуляции с форумами на phpBB у меня прокатывали =) а как я буду в ручную везде менять значения? их же там огромное количество Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
pcmist Опубликовано 28 января, 2015 Поделиться Опубликовано 28 января, 2015 Неужели способ во втором сообщении от WOLF не помог? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
bsnet Опубликовано 28 января, 2015 Поделиться Опубликовано 28 января, 2015 а как я буду в ручную везде менять значения? их же там огромное количествоНайти определенное значение и заменить на нужное, массово Хотя если такие вопросы задаёте, думаю не стоит тогда делать. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.