[PHP-users 848] Re: PHP4.0.6の日本語処理について
calnet-S.Nakamura
php-users@php.gr.jp
Tue, 24 Jul 2001 14:34:51 +0900
ピントがずれた質問になったので、もう一度質問のし直しを
させてください。
実行環境:
ディストリビューション:TurboLinux6.5(FTP版)
(ただし、apache,php.postgreSQLはインストールせず。)
WWW:apache1.3.20
DB:PostgreSQL7.1.1
PHP4.0.6
上記、実行環境にて、以下のようなphpファイルを実行すると
ファイル名:test.php
<?php
$sql = "テスト";
print $sql;
?>
以下のような結果が出力されます。
?e?X?g
(IE.5.5よりソース表示した内容)
上記の結果、ブラウザ(IE5.5)では文字化けが発生します。
(エンコードされずに出力されてしまう。)
上記の件について、対応策を教えていただければ幸いです。
以上、宜しくお願いいたします。
送信者 : "calnet-S.Nakamura" <s-nakamu@calnet.ne.jp>
宛先 : <php-users@php.gr.jp>
送信日時 : 2001年7月24日 13:59
件名 : [PHP-users 842] Re: PHP4.0.6の日本語処理について
> 日本語処理について、私の方でもいろいろ試しました。
> その前に、環境情報を書き忘れましたので、以下に記述します。
>
> ディストリビューション:TurboLinux6.5(FTP版)
> (ただし、apache,php.postgreSQLはインストールせず。)
> WWW:apache1.3.20
> DB:PostgreSQL7.1.1
>
> ・質問の前に確認したこと:
> エンコードができているか。
> シフトJISになっていることを確認しました。
>
> ・質問の後に確認したこと:
> 1.文字情報の明示
> 以下のようにphpファイルを変更しました。
>
> ファイル名:test.php
> <html>
> <head>
> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Shift_JIS">
> <title> テスト </title>
> </head>
> <body>
> <?php
> $sql = "テスト";
> print $sql;
> ?>
> </body>
> </html>
>
> 結果:
> 文字化けのままです。タイトルまで文字化けでした。
> そこで、apacheの方を疑って、ファイル名をphp.htmlとして
> 表示させると、もちろん内容は表示しませんが、
> タイトルの文字化けはなくなりました。
>
> 2.PEAR DBを使用して、PostgreSQLのテーブル情報(フィールド、データ情報)を
> 表示
>
> ファイル名:test1.php
> 結果:
> 問題なく、データ情報は日本語が表示されました。
>
> 結論(対応策)は、まだですが、apache側の設定も確認対象としてみます。
> また、PEARクラスの使用も考えてみます。
>
> ちなみに、httpd.confの設定では、以下の項目を追加しました。
> LoadModule php4_module libexec/libphp4.so
> AddType application/x-httpd-php .php
> AddType application/x-httpd-php-source .phps
>
> 以上。
>
> 送信者 : "Masashi Ohba" <ohba@intelight.co.jp>
> 宛先 : <php-users@php.gr.jp>
> 送信日時 : 2001年7月24日 12:32
> 件名 : [PHP-users 833] Re: PHP4.0.6の日本語処理について
>
>
> > 大場です。
> >
> > calnet-S.Nakamura wrote;
> >
> > >PHP4.0.6の日本語処理について、お教えください。
> > >
> > >以下のように、単純に日本語を表示しようとしても、
> > >文字変換がうまくいきません。
> > >
> > >ソース:
> > ><?php
> > >$sql = "テスト";
> > >print $sql;
> > >?>
> > >
> > >表示結果:
> > >?e?X?g
> >
> > 単にブラウザが日本語部分が短かすぎて
> > 自動判別でSJISと認識してくれてないだけでは?
> > ブラウザ側でエンコード変えたらどうなりますか?
> >
> > つうか、ブラウザにちゃんと表示させたいならば
> > 出力した日本語コードとあうように
> >
> > <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Shift_JIS">
> >
> > を出るようにしておかないとだめなのでは?
> > もらったデータをどう判断するかはブラウザ依存だろうし
> > 短すぎると自動判断出来ないこともあるし
> >
> > html中にcharsetの指定が無くても表示が上手くいってるのは、
> > ブラウザが勝手によきに計らったら、たまたま問題が出なかった
> > って程度のことだと思いますけど。
> >
> > ------------------------------------------------------------
> > 大場正志(Masashi Ohba)
> > E-Mail ohba@intelight.co.jp
> > (株) インテライト
> > http://www.intelight.co.jp
> > ------------------------------------------------------------
> > _______________________________________________
> > PHP-users mailing list
> > PHP-users@php.gr.jp
> > http://ns1.php.gr.jp/mailman/listinfo/php-users
> >
> >
> >
>
> _______________________________________________
> PHP-users mailing list
> PHP-users@php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
>
>
>