[PHP-users 4988] php4.1.1の日本語設定について

Fukuoka Isamu php-users@php.gr.jp
Fri, 25 Jan 2002 18:20:06 +0900


ふくおか@コンビ・ネットです。

PHP3で動作していたスクリプトをPHP4に対応するため、PHP4.1.1をインス
トールしました。スクリプトは無事動作したのですが、フォームから日本
語入力したデータがSJISのままデータベースに保存されてしまう現象が起
きてしまいました。

コンパイル方法またはphp.iniの記述方法に問題があるのではないかと思い、
過去ログ等を調べてみましたが「日本PHPユーザ会」−「マニュアル」−
「LIIマルチバイト文字列関数」に記述してある内容とほぼ同じでした。
#http://www.php.net/manual/ja/ref.mbstring.php を参考に作業をしま
#した。

なぜ、フォームデータが正しく変換されないのか原因がわかりません。
何かわかりましたら知恵を貸していただけないでしょうか?

●作業環境
OS           :TurboLinux 6.1
WWWサーバ    : Apache 1.3.17
               # ソースからコンパイルしました。
PHP          : 4.1.3
               # ソースからコンパイルしました。
データベース : PostgreSQL 7.1.3
               # ソースからコンパイルしました。
               # データベースの文字コードはEUCです。
スクリプト   : EUC

・php4.1.1のconfigure方法
'./configure' '--with-pgsql=/home/postgres/'
              '--with-apache=../apache_1.3.17/' '--enable-track-vars'
              '--enable-mbregex' '--enable-versioning'
              '--enable-trans-sid' '--enable-mbstring'
              '--enable-mbstr-enc-trans'
#上記URLを参考にしました。

・php.iniの内容
元のphp.ini-destから変更部分だけです。
#上記URLの「SJISユーザ用のphp.iniの 設定」を参考にしました。
#php.ini修正後、apacheを再起動しております。

output_buffering = On
output_handler = mb_output_handler

[mbstring]
mbstring.detect_order = auto
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.substitute_character = none;

以上、よろしくお願いいたします。

---
 へ へ    com-bi.net (有)コンビ・ネット
 の の          福岡 勇(ふくおか いさむ)
  へ            fukuoka@com-bi.net