PHPで携帯サイトを作っています。

※phpファイルのの文字コードEUC-JP

ドコモ携帯で絵文字を入力した際、POSTデータに絵文字コードが入ってきません。
ウェブで調べてみると文字コードの違いによって、絵文字コード消されているようです。

EUC-JPのPHPで作ったシステムで、携帯の絵文字を受け取れる方法などをご教示ください。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2009/01/19 08:27:47
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:pahoo No.1

回答回数5960ベストアンサー獲得回数633

ポイント200pt

携帯の絵文字がPOSTデータとして送出されているという前提で回答します。


"php.ini" の mbstring.http_input を "pass" にしてください。

これで、POST データに入っている絵文字(シフトJISコード)をそのまま受け取れるはずです。

なお、受け取り側の PHP は EUC-JP ということなので、絵文字(シフトJISコード)をそのまま処理することはできません。EUC-JP に変換することもできません.

id:webuser

ありがとうございます。

mbstring.http_inputは、passが入っていました。

他に何か原因となるようなものがあればご教示ください。

2009/01/15 00:09:25

その他の回答1件)

id:pahoo No.1

回答回数5960ベストアンサー獲得回数633ここでベストアンサー

ポイント200pt

携帯の絵文字がPOSTデータとして送出されているという前提で回答します。


"php.ini" の mbstring.http_input を "pass" にしてください。

これで、POST データに入っている絵文字(シフトJISコード)をそのまま受け取れるはずです。

なお、受け取り側の PHP は EUC-JP ということなので、絵文字(シフトJISコード)をそのまま処理することはできません。EUC-JP に変換することもできません.

id:webuser

ありがとうございます。

mbstring.http_inputは、passが入っていました。

他に何か原因となるようなものがあればご教示ください。

2009/01/15 00:09:25
id:pahoo No.2

回答回数5960ベストアンサー獲得回数633

ポイント100pt

お手数ですが、受け取り側の PHP で以下を実行し、表示された16進数文字列と、与えた絵文字のコード(16進数)を教えてください。

echo bin2hex($_POST['絵文字が入っているPOST変数名']);
id:webuser

ありがとうございます。

POST値には「あ1」と入れたところ、「a4a231」と表示されました。

度々で申し訳ないのですがよろしくお願いします。

2009/01/16 18:39:11
  • id:pahoo
    #2で確認していただきたかったことは、PCから文字を入力するのではなく、
    携帯から“絵文字”を入力したときの入力した絵文字のコードと結果を知りたかったのです。
    お手数ですが、携帯電話でご確認ください。
  • id:webuser
    コメントに書いて頂いてたのですね。
    ありがとうございます。

    >POST値には「あ1」と入れたところ、「a4a231」と表示されました。
    は、携帯からのものでした。

    POST値が絵文字だけの場合、echo bin2hex(post変数)何も表示されませんでした。

    echo bin2hex(post変数)は、スクリプトの先頭に書いて実験しましたので
    プログラム中でクリアしているということも無いようです。

    となるとサーバー側となるはずなのですが・・
  • id:pahoo
    うーん、携帯電話側の入力画面のソースが分からないと、何とも言えませんね。
  • id:webuser
    どうもこの問題は奥が深そうですね。
    現状、ドコモだけでテストしてたのですが他の端末の都合とかも加味すると気が遠くなります。

    一旦クローズさせてもらって、質問する準備を整えたいと思います。
    お付き合い頂きありがとうございました。
    またお願いいたします。

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

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

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

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