マスターに聞いてください。
これは、PHP がフォームを送信するページです。受信者には GBK エンコードが必要です。送信者の PHP とデータベースは両方とも UTF-8 形式です。したがって、ページは中央に設定され、フォームのエンコーディングは gbk になります。
Google、Firefox、国内ブラウザのスピードモードでテストしたところ問題なく、投稿された名前が正常に表示されます。
IEブラウザと国内ブラウザの互換モード送信時のみ文字化けが発生していました。
パケット キャプチャ後、次のことがわかりました:
name=%E7%B4%A7%E7%8B%82%E7%A0%82
この情報はパケット キャプチャに表示されます。検証後、これは でのトランスコーディングです。 uft-8 モードです。正しいです。しかし、問題が発生しました。私のページは gbk ですが、トランスコーディングが utf-8 モードになるのはなぜですか。
問題の説明が終わりましたので、専門家に助けを求めたいと思います。ありがとう###
解決しました
送信時にこの種のトランスコーディングは見たことがありません。エンコーディングは受信サーバー側で処理される必要があります。または、2 つのコードが統合されます。
を使用して手動変換コーディングを試してください。幸運を祈ります。