0

現在、webapp を ISO-8859-1 から UTF-8 に変換しています。そして、すべてがうまく機能しますが、他のサイト (サインアップフォーム) から get/post 変数を要求します。

私たちのサイトに投稿するこのサイトの一部は ISO-8859-1 エンコーディングを使用しており、一部は UTF-8 を使用しています。

問題は、特殊文字がサイトの文字セットに応じて異なる方法で URL エンコードされることです。

例: ø = ISO-8859-1 の %F8 ø = UTF-8 の %C3%B8

UTF-8 文字セットを使用している場合、%F8 を正しく取得できません。Unicode 文字「置換文字」(U+FFFD) しか取得できません。

これを修正する方法についてのヒントは大歓迎です:)

トルビョルン

4

2 に答える 2

0

変換する前に、入力の事前分析を行うことをお勧めします。基本的に、Æ、Ø、Å (大文字と小文字) の iso-8859-1 コードをスキャンします。見つかった場合は、リクエスト全体を検索/置換し、iso-char コードを UTF-8 charcode に交換します。

于 2010-11-11T11:38:33.740 に答える
0

を使用してエンコーディングを明示的に指定できます<form accept-charset="UTF-8">

それをしたくない場合、ブラウザは必要なエンコーディングを推測する必要があります。そのためには、通常、フォームがあるページのエンコーディングが必要です。したがって、フォームとして HTML ファイルを提供するとUTF-8、フォームも として返されUTF-8ます。

于 2010-11-04T21:34:48.020 に答える