• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PDOでMySQL接続した際の文字化けについて)

PDOでMySQL接続した際の文字化けについて

このQ&Aのポイント
  • データベースを初めて勉強中なのですが、文字化けの問題が発生しています。utf8_general_ciと<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />が指定されているにも関わらず、日本語が???と表示されます。
  • 質問者は表のデータを表示するためにPDOでデータベースに接続していますが、日本語が文字化けしてしまいます。
  • 解決策を探してググってみたが見つからず、先に進めない状況です。どのような原因が考えられるでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

PDOで接続するときにcharsetを指定するとよいらしい $pdo = new PDO( 'mysql:host=myhost;dbname=mydb;charset=utf8', 'myname', 'mypass' );.

toto073
質問者

お礼

ご回答ありがとうございます。おっしゃるように指定しましたら解決しました!

その他の回答 (1)

回答No.2

$pdo = new PDO("mysql:dbname=men", "root"); $pdo->query("set names utf8;"); // この行を追加する $st = $pdo->query("SELECT * FROM udon"); 取り急ぎの対策といたしましては、 上記のように1行追加してみるといかがでしょうか?? また下記URLにも同様の現象を解決している事例がございましたので、 つけさせていただきました! http://blog.machacks.net/2013/06/18/pdo%E3%81%A7mysql%E6%8E%A5%E7%B6%9A%E3%81%97%E3%81%9F%E3%82%89%E6%96%87%E5%AD%97%E5%8C%96%E3%81%91%E3%81%97%E3%81%9F%E6%99%82%E3%81%AE%E3%83%A1%E3%83%A2/

toto073
質問者

お礼

すごいです!一発で解決しました! ありがとうございました!!

関連するQ&A