ホームページ  >  に質問  >  本文

IE ブラウザのフォームが送信されると、中国語のトランスコーディングは常に無効になります

1499653084528884.jpg

マスターに聞いてください。

これは、PHP がフォームを送信するページです。受信者には GBK エンコードが必要です。送信者の PHP とデータベースは両方とも UTF-8 形式です。したがって、ページは中央に設定され、フォームのエンコーディングは gbk になります。

Google、Firefox、国内ブラウザのスピードモードでテストしたところ問題なく、投稿された名前が正常に表示されます。

IEブラウザと国内ブラウザの互換モード送信時のみ文字化けが発生していました。

456.jpg

パケット キャプチャ後、次のことがわかりました:

name=%E7%B4%A7%E7%8B%82%E7%A0%82

この情報はパケット キャプチャに表示されます。検証後、これは でのトランスコーディングです。 uft-8 モードです。正しいです。しかし、問題が発生しました。私のページは gbk ですが、トランスコーディングが utf-8 モードになるのはなぜですか。

問題の説明が終わりましたので、専門家に助けを求めたいと思います。ありがとう###

phpcn_u9994phpcn_u99942630日前1388

全員に返信(3)返信します

  • phpcn_u9994

    phpcn_u99942017-07-11 00:30:01

    解決しました

    返事
    0
  • PHP中文网

    PHP中文网2017-07-10 11:53:41

    onsubmit="document.charset='gbk';"

    送信時にこの種のトランスコーディングは見たことがありません。エンコーディングは受信サーバー側で処理される必要があります。または、2 つのコードが統合されます。

    返事
    0
  • PHP中文网

    PHP中文网2017-07-10 11:50:13

    @iconv('utf-8','gbk',$str);

    を使用して手動変換コーディングを試してください。幸運を祈ります。

    返事
    0
  • キャンセル返事