PHP/PHP関連情報

PHPプログラムで日本語が文字化けする場合

PHPプログラムで日本語が文字化けする場合の対応について解説しました

執筆者:堀江 美彦

PHPプログラムで日本語が文字化けする場合の対応


Web+DBプログラミング入門 Apache + PHP + MySQL編の
PHPサンプルプログラムを実行した結果、MySQLのテーブルに格納し、
PHPプログラムでブラウザ上に表示した日本語(漢字・倍角の文字)が
正しく表示されない場合はDBへ接続しているプログラムソースの

//DBへ接続開始 サーバー名--localhost ユーザー名--root パスワード--root
$dbHandle = mysql_connect("localhost","root","root");
//DBの接続に失敗した場合はエラー表示をおこない処理中断
if ($dbHandle == False) {
print ("can not connect db\n");
exit;
}

の下の行にMySQLのクライアントの文字コードをsjisに設定する次の3行を
//MySQLのクライアントの文字コードをsjisに設定
mysql_query("SET NAMES sjis")
or die("can not SET NAMES sjis");

を追加してください。

*注 ---
プログラムファイルの文字コードはsjisを指定して保存してください。
サクラエディタなど文字コードを指定できるエディタを使うと便利です。

MySQLのクライアントの文字コードをsjisに設定していないので日本語が文字化けしている例
 

MySQLのクライアントの文字コードをsjisに設定し日本語が正常に表示された例
 

Web+DBプログラミング入門 Apache + PHP + MySQL編のサンプルプログラムは
MySQL Version5に対応用に変更し、近々リニューアルする予定です。
その際、上記のMySQLのクライアントの文字コードをsjisに設定する部分も追加して
更新する予定ですのでしばらくお待ちください。

*注 ---
MySQLのクライアントの文字コードをsjisに設定する必要があるプログラムはDBへ接続しているプログラム
mytest1.php
mytest2-1.php
mytest3-1.php
mytest4-1.php
mytest5.php
mytest5-1.php
mytest6.php
mytest7.php
mytest8.php
などです。


mytest2.php
mytest3.php
mytest4.php
などDBへ接続していないプログラムには追加する必要がありません。


【関連情報】
Apache + PHP + MySQL編 Web+DBプログラミング入門
MySQL Version5 関連記事一覧
Apache2、PHP5 関連記事一覧
【編集部おすすめの購入サイト】
楽天市場で PHP 関連の書籍を見るAmazon で PHP 関連の書籍を見る
※記事内容は執筆時点のものです。最新の内容をご確認ください。
※OSやアプリ、ソフトのバージョンによっては画面表示、操作方法が異なる可能性があります。

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます