• ベストアンサー

PHPでの文字化け

PHPの勉強をしている者です。 PHPファイルを作成し、htdocs内に保存、その後URLをブラウザに入力し アクセスしてみたところ、表示されたサイトが文字化けしていました。 インストールされているソフトはPHPのバージョンが4.3.2、Apacheは2.0.46です。 参考書を頼りにphp.iniのAddDefaultCharsetの項目をnoneに書き換え、 そのほかのディレクトリ設定の部分も参考書の通りに書き直し、ファイルの移動も行いました。 ソフトのバージョンが古いのは、参考書に合わせることで 環境設定の相違を防ぐためです。 AddDefaultCharset以外にphp.iniなどで どこか書き直す必要があるのでしょうか? どこをどうすれば、日本語が上手く表示されるのでしょうか? 宜しくお願いしますm(_ _)m

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

  • ベストアンサー
  • inegral
  • ベストアンサー率50% (3/6)
回答No.1

サーバの設定を変えるよりも、ソース側で対応した方が簡単かと思います。 まず、文字化けする際のブラウザの文字コードを確認してみてください。 IE7であれば、「表示」→「エンコード」で何がチェックされていますか? 例えば、そこで、「エンコード」を変えてみて、正常に表示されることはありますか? 正常に表示された文字コードで、文字コード宣言をおこなってください。 例.<meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> 詳しくは参考URLをご覧ください。

参考URL:
http://www.mozilla.gr.jp/standards/webtips0022.html
flicker
質問者

お礼

当方ブラウザはfirefoxを使用しております。 表示メニュー→文字エンコーディング→日本語(Shift_JIS)に 切り替えることで、上手く表示されました。 参考URLどうも有難うございます。 文字コード宣言していないと、ブラウザはキャラクタセット を判断する材料がないわけですね。  文字化けの理由が、インストール時のディレクトリやiniファイル の設定のせいばかりだと思って、色々なサイトを見て回っていたので 本当に助かりました。 どうも有り難うございましたm(_ _)m

その他の回答 (1)

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

まずは、phpファイルを書くときにエディタで 自分がどのキャラクターセットで書いているか理解するのが第一歩。 その後それにあわせてphpのファイルにheaderを指定するのが基本です header("Content-Type:text/html;charset=euc-jp"); メタタグは保険でつけておく程度で考えてください。

flicker
質問者

お礼

PHPファイル保存時にメタタグで 使用しているキャラクタセットを記述することで、 文字化けを防ぐことが出来るんですね。 初歩的なことをご丁寧に有難うございましたm(_ _)m

関連するQ&A