• 締切済み

携帯サイトで稀に文字化けしてしまいます。

PHP+MySQLで携帯サイトを構築しています。 DBと各ファイルのエンコードはEUC-JPで、携帯対応するために 出力のみhtaccessにてSJISにしております。 また、入力フォーム等もあるためhtaccessに下記を記述したところ、 基本的には問題なく表示するのですが、更新を繰り返すと5~10回に1回ほど文字化けを起こします。 #htaccess内の記述--- php_value output_handler mb_output_handler php_value default_charset Shift_JIS php_value mbstring.language Japanese php_flag mbstring.encoding_translation 0 php_value mbstring.http_input auto php_value mbstring.http_output SJIS php_value mbstring.internal_encoding EUC-JP php_value mbstring.substitute_character none #------------------- それも、現時点で確認している状況では ・db.phpというファイル内でDBからデータを取得し、その中でdumpした場合はまったく文字化けせずSJISで表示 ・index.html内に日本語を記述しても文字化けなくSJISで表示 ・main.php内でいろいろなファイルをrequire_once等していると文字化けが発生 (具体的には日本語部分が全て???になったり空白になったりする ソースを開いてエンコードを変えても変化無し) 毎回正常だったり毎回文字化けしていれば分かるのですが、ごく稀にそういう状況が起きてしまっているので困っています。 どなたか知恵をお貸し下さい。 サーバ環境 レンタルサーバ Kagoya Internet Routing(共用) Apacheバージョン Apache/1.3.37 MySQLバージョン 5.0.33 (Ver 14.12 Distrib 5.0.33) PHPバージョン 5.2.5

みんなの回答

回答No.1

ごく稀に読み込まれるrequire元のファイルがEUCじゃないんじゃないでしょうか。 毎回ログを取るなどして問題を切り分けしたほうが良さそうです。

kawasaki_b
質問者

お礼

なるほど!と、じつは毎回require元は同じなのですが・・・ サーバ側の設定を変更したら直りました!

関連するQ&A