PHPについて質問です。


メールフォーム中、以下のように文字コード変換を行っているのですが、mb_convert_encoding($inquiry, "JIS","auto");
PHP側で以下のエラーが表示されます
「Warning: mb_convert_encoding() [function.mb-convert-encoding]: Unable to detect character encoding in・・・」

恐らく、autoが原因だと思うのですが、
php.inの設定、もしくはhtaccessの設定をどのように指定すれば動くものでしょうか?

ちなみに以下のものでは動きませんでした。
<IfModule mod_php4.c>
php_value mbstring.language Japanese
php_value mbstring.detect_order ASCII,JIS,UTF-8,EUC-JP,SJIS
php_flag mbstring.encoding_translation On
</IfModule>

※なぜかauto以外は文字化けするので、どうしてもautoを使う必要があります。

よろしくお願い致します。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2006/10/12 01:15:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:tikirou No.1

回答回数80ベストアンサー獲得回数8

ポイント35pt

簡単な回答ですみませんが

デフォルトを日本語にするために

php.inにmbstring.language = Japanese

を設定してみてはどうでしょうか?


[PHP-users 21812]Re: mb_convert_encodingについて

http://ml.php.gr.jp/pipermail/php-users/2004-May/022334.html

id:technolize No.2

回答回数21ベストアンサー獲得回数3

ポイント35pt

http://q.hatena.ne.jp/1159978261

  • hidden で判定用の文字列を送信する(定番の美乳とか)。

<input type="hidden" name="hoge" value="美乳" />

  • implode(join)で文字列をすべて連結し、判定しやすくする。

$encode = mb_detect_encoding(implode("", $_POST));

大抵はこれらで対処出来るかと思いますが、すでにご存知でしたらすいませんです。。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません