<?php $pdo = new PDO( 'mysql:host=yourhost;dbname=yourdb;charset=utf8', 'user', 'password' );
ブラウザで日本語が焼肉ã¦ã„ã—ょãのように文字化けをしてしまいます。
charset=utf8を記載しなかったらちゃんと日本語が表示されるので逆な感じがするのですがこれは何が原因だと考えられるのでしょうか?
mysql> show variables like '%char%'; +--------------------------------------+----------------------------+ | Variable_name | Value | +--------------------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | | validate_password_special_char_count | 1 | +--------------------------------------+----------------------------+
はこのようになっています。
character_set_databaseとcharacter_set_serverはlatin1になっていたのですが
mysql> set character_set_database = utf8; mysql> set character_set_server = utf8;
で変更しました。
回答4件
あなたの回答
tips
プレビュー