Апр
28
2008

Создание базы MySQL на UTF-8

Для начала пропишем необходимые заголовки:

header("Content-Type: text/html; charset=utf-8");
if (!setlocale(LC_CTYPE ,"ru_RU.UTF-8"))
setlocale(LC_CTYPE,"ru_RU");

Далее при создании таблиц, нужно правильно прописать локали

$db->query("CREATE TABLE `eldario` (`categoryID` int(11) NOT NULL auto_increment, `itemID`   int(11) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;");

если не указывать COLLATE=utf8_general_ci, тогда дальнейшие запросы будут регистро зависимыми, а это не всегда удобно.

После установки соединения с базой установим настройки выдачи

mysql_query("set character_set_results=utf8;",    $link);
mysql_query("set character_set_connection=utf8;", $link);
mysql_query("set character_set_client=utf8;",     $link);
mysql_query("set character_set_database=utf8;",   $link);

где $link, идентификатор соединения.

Похожие сообщения