[PHP-users 9444] Re: 文字encord 設定

Naofumi Kondoh php-users@php.gr.jp
Thu, 22 Aug 2002 10:20:25 +0900


ソフト工房の近藤です。

tyunn@to.email.ne.jp wrote:

...略....
> ◆疑問点1
> HTMLを文字コードEUCで作成し、phpのすくりぷとを埋め込みファイルを作成していま
> す。
> テーブル内の値を取得し表示させていると同時に、HTMLのformで
> <input type="text" name= ・・・>
> <textarea name="xxx"></textarea>
> を利用しブラウザから入力した文字をpostし処理もしています。
> HTMLのMETAタグで言語、エンコードはそれぞれ "ja" 、 EUC_JP です。
> PostgresのエンコードはEUCです。
> このとき Windows版IE5.5、Netscapeでは文字化けはおきません。
> ですが、macOSのIEで<input type="text" name= ・・・>部分に文字を入力したとた
>> 日本語の場合文字化けをおこします。テキストボックスのなかで意味不明の未変換の
> 文字列が並んだ状態になります。Mac版Netscape4.7ではこの現象はおきません。

macOSのIE は使ったことがないので一般論ですが。

<input type=hidden name=checkencoding value="長い日本語文字列。。。">
を入れて置いて、この POST 値を、
mb_detect_encoding
jstr_discover_encoding
i18n_discover_encoding
などで、encoding を判定して、mb_convert_encoding などで、
ENCODE を指定して明示的漢字コード変換をしたらどうなるで
しょうか。

数文字程度の短い文字を入力させるときの漢字コード
判定ミスを防ぐのが目的なので、外しているかもしれ
ませんが。

8月27日勉強会の題材のプログラムの 3730 行目あたり
でこういった処理をしています。ご参考まで。

http://www.postgresql.jp/subcommittee/ap/


> ◆疑問点2

これは、三村さんのフォローの通り。

この問題と関係ないかもしれませんが、php.ini の
大部分の値は、set_ini() 関数で変更可能です。
詳しくは、マニュアルを見てください。


_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 (株)ソフト工房   近藤直文        Email:  nkon@shonan.ne.jp
http://www.SOFTKOUBOU.co.jp/      http://www.shonan.ne.jp/~nkon/
2002-08-27(火)19:00-21:30 第5回 JPUG 業務アプリ分科会 勉強会
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/