- 締切済み
HTMLから入力される文字コードについて
HTMLにテキストボックスを配置し、入力された値をアプリケーションサーバ上(Java)で処理するというアプリを作成しているのですが、テキストボックスに環境依存文字(Unicode)とShift-JIS文字が混在した場合にHTTPRequest内が文字化けしてしまいます。 環境依存文字が入力されたかどうかはサーバー側では判別不明(既に文字化けしてるため)なんですが、一般的にはどう処理しているのでしょうか??
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- venzou
- ベストアンサー率71% (311/435)
IE6 Opera7 Firefox2 で確認してみました。 SJISで書かれたHTMLから、Unicodeを含む「繋がる」を送信し、PerlのCGIで受け取ってみたところ。 エンコードされた生データは「%26%2332363%3B%82%AA%82%E9」 これをデコードすると「繫がる」となります。 これをブラウザで表示するとUnicodeを含む「繋がる」がちゃんと表示されます。 私の環境では、送信されているデータは正しいようです。 送信しているPCと、サーバ側のPCは同じPCでしょうか? もし違うなら、サーバの環境で下記のHTMLファイルは正しく表示されますか? (Unicodeを含む「繋がる」が表示されるはずですが。) -------- <html><head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> </head><body> 繫がる<br> </body></html> --------
- venzou
- ベストアンサー率71% (311/435)
もう少し詳しい情報をお願いします。 HTMLの文字コードは何でしょうか? 送信前のフォームでは正しく表示されているでしょうか? ブラウザは何を使っていますか? 具体的にどんな文字を入れたら、どう化けたのか?
補足
説明足らずですみません。 HTMLの文字コードはShift-JIS、 送信前のフォームでは正しく表示されています。 ブラウザはIE6。 具体的な文字は「繋がる」の環境依存文字で「つながる」で 変換されると表示されます。ここでその文字を入力すると文字化けしてしまいました・・・。