Тема: Перемешались кодировки в полях
Переносил базу форума smf с одного хостина на другой. Как обычно война с кодировками, но ее вроде как решил. База в cp1251_general_ci изначально была. Сейчас заметил, что некоторые буквы (например ш) поменялись на вопросик. Из-за этого, такие сообщения вообще перестали выводиться, пока в ручную, через phpMyAdmin не исправишь в нужном поле. Хотел написать простенький скрипт, который бы перебрал сообщения и по возможности исправил вопросики, но скрипт возращает такие битые строки абракадброй.
Скрипт, которым пытаюсь посмотреть таблицу.
MYSQL_CONNECT($hostname,$username,$password) OR DIE(mysql_error());
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
mysql_select_db("$dbName") or die(mysql_error());
$query = "Select * FROM `smf_messages`";
$result = MYSQL_QUERY($query) or Die(mysql_error());
while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
print ($row["body"]."<br>");
}
mysql_free_result($result);
MYSQL_CLOSE()
Вопроса два:
1. Что можно сделать с данной проблеммой.
2. Из-за чего при переносе так строчки могло перекоряжить?