「お名前.com」レンタルサーバで
このブログで利用しているレンタルサーバは「お名前.com」です。
で、せっかくレンタルサーバの容量も余ってるし、久しぶりにPHPで簡単なWebサイトみたいなもの、作ってみようかな・・・と思い、「お名前.com」が提供している環境でPHPを書き始めました。
MySQLからデータを取得してPHPで文字列を表示する、単純なもの。
ローカル環境では問題なくDB接続して日本語文字列も表示されるし、一旦、サーバ上に上げてみようかな、と試したところ・・・
文字化け・・・
ま、日本語が文字化けするのはよくあることですよね。Web上にはいくらでも事例も上がってるし、すぐに解消できるでしょ。なんて思って「php 日本語 文字化け」でヒットする対応法をいろいろ試しても全然うまくいかない・・・。
Sponsored LinkPDOの接続文字列に問題
Web上の事例としては「php.ini」や「MySQLの設定」などありますね。ただ、それらの設定は「お名前.com」では既にそのように設定されていたり、実際に設定記述を入れてみたりしてもどれもNG。
PDO(mysql:dbname=xxx;host=yyyy;port=9999 … 以下略)
で、これまでの開発や今回のローカル環境確認では、上記のように記述してました。実際問題なく表示されていたのですが。
で、ヒットした対応案に倣って、それを以下のように変更したところ、解決。
PDO(mysql:dbname=xxx;host=yyyy;port=9999;charset=utf8 … 以下略)
設定ファイル等は関係なかったみたい。
PDO接続「charset」を指定