This page is Japanese code S-JIS
CGI エンコード・デコードをする
ご存知のように、フォームなどから入力されるデータは、Web サーバに到着時には、エンコードされている。
エンコードの方法は、7bit ASCII 以外のデータは、"%" に 8bit を、16 進数で表現したものを続けるというものである。
7bit ASCII でも記号類は、ほぼエンコードされている。(Web によって特殊な意味をもたされているので、文字としての記号はエンコードしてもらった方が処理をしやすいからであろう)
以下の左欄に、文字列を入力して、エンコードボタンを押下すれば、右欄にエンコードされた文字列が表示されるし、
右欄に、CGI デコードの文字列を入力し、デコードボタンを押下すれば、左欄にデコードされた文字列が表示される。
実は、JavaScript の組み込み関数を使っているだけね。
(ソース見てちょ)
実はクッキーなどの値も、CGI エンコードそれているのよ。
文字コード早見プログラムって感じもなくはない。(ボソッ)
っつても、非 ASCII だけだけどねぇ
使っている関数は、ソースを見れば一目瞭然だが、escape() 関数。
escape() 関数によって変換されない記号は、
Netscape Navigator 3.04en for MS-Windows9x |
./_+*@- |
Netscape Navigator 4.6Jp for MS-Windows2000 |
./_+*- |
Netscape Navigator 4.75Jp RedHat Linux 7 |
+*_./- |
Internet Explorer 4.72.3110.1 SP1 for MS-Windows9x |
./_+*@- |
Internet Explorer 5.00.2920.0000 |
./_+*@- |
Mozilla 0.9.9 for RedHat7.3 |
./_*-+ |
きちんと、CGI デコードをやるには、"+" は、"%2B" に変換して、" (半角スペース)" は、"+" に変換するようにした方がよい。
ASP の場合はここのどこか
CGI エンコード/デコード
動作確認ブラウザ
- Netscape Navigator 3.04en for MS-Windows9x
- OK
- Netscape Communicator 4.6jp for MS-Windows9x
- OK
- Netscape Communicator 4.72jp for MS-WindowsNT4.0
- OK
- Netscape Communicator 4.75jp for MS-Windows2000
- OK
- Netscape Communicator 4.75jp for RedHat Linux 7
- OK
- Netscape Communicator 4.79Jp for RedHat Linux7.3
- OK
- Netscape 6jp for MS-Windows2000
- OK
- Netscape 6.1 for MacOS9.2.2 (J1-9.2.2 MacOSROM J1-8.8.1)
- OK
- Internet Explorer 5.0(2022) for MacOS9.2.2 (J1-9.2.2 MacOSROM J1-8.8.1)
- OK
- Internet Explorer 4.72.3110.1 SP1 for MS-Windows9x
- OK
- Internet Explorer 4.72.3110.8 SP1 for MS-WindowsNT4.0
- OK
- Internet Explorer 5.00.2314.1003 for MS-WindowsNT4.0
- OK
- Internet Explorer 5.00.2919.6307 for MS-WindowsNT4.0
- OK
- Internet Explorer 5.00.2920.0000 for MS-Windows9x
- OK
- Internet Explorer 5.00.2920.0000 for MS-Windows2000
- OK
- Netscape 6.2.1jp for MS-Windows2000
- OK
- Netscape 6.2.3jp for MS-Windows2000
- OK
- Opera (free) 5.12 build932 for MS-Windows2000
- OK
- Mozilla 0.9.9 for RedHat Linux7.3
- OK
mail to active@window.goukaku.com