ビギナーズ CGI

 初歩から始める初心者向けPerl-CGI講座  

| トップページ | CGI設置 | CGI作成 | 作成事例 | 設置用語 | 作成用語 | 関数リファレンス | FAQ | お問合せ |
  
CGIの設置方法
フリーで配布されているCGIを設置する際の手順や注意事項などの説明です。

CGI作成の初歩
初めてCGIを作る方向けの手順を簡単な例で説明しています。

CGI作成ヒント集
こういう事をする時は、どのように行えばいいのか?など具体的な事例を紹介します。

CGIの設置に関する用語
CGIの作成に関する用語
CGIの設置や作成時に使われている用語や関連知識を掲載しています。

設置に関するFAQ
作成に関するFAQ
設置や作成をする際に起こりがちなトラブルの説明と、よくある質問とその回答を掲載しています。


 
 



文字列のURLエンコードとデコード

URLエンコードは空白や特殊記号、日本語などの全角文字を送信する際
に正しく送る為に必要なものです。
Yahoo!Google などで検索してブラウザのURL欄を見てみると、 %など
を含む意味不明な文字列になっていますが、これがURLエンコードです。

URLエンコードはフォームなどから送信する際、アクセスした人の端末で
行われますので、URLエンコードについての説明は省きます。
実際にこれを受け取る場合にはエンコードされた文字列をデコードします。


下の例では 入力された文字をエンコード という文字列をURLエンコードしたものと、
それをデコードしたものを、実行結果で表示します。





フォームなどより送られるデータをURLエンコードする際はアクセスする端末側(ブラウザ側)で
行わる為、大抵使用するのはデコードのみで、URLエンコードの処理はあまり利用しません。
デコードは下のようにすれば内容を理解していなくても使用する事ができます。
深く理解したい方は ASCII コード 、SJISやEUCの文字コード表などと、pack や unpack 、 hex
などの関数の意味と、実際に出力される文字列を見比べると良いと思います。
+ の置換えは s/\+/ / でも同じ事ができますが tr の方が処理が速いようです。



【デコード】


対象の変数内文字列の + 記号を半角スペースに戻す
$対象の変数 =~ tr/+/ /;



対象の変数の文字列をデコードする
$対象の変数 =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;



【参考】
ASH multimedia lab (文字コード一覧)
http://ash.or.jp/code/

TeraPad (テキストエディタ)
http://www.vector.co.jp/soft/win95/writing/se104390.html

TpSCC (TeraPad から SJIS文字コードを参照)
http://www.vector.co.jp/soft/win95/writing/se291654.html



関連項目

・ CGIの作成に関する用語
・ CGI作成に関するFAQ


Beginner's CGI  - Copyright (C) 2003 aimix. All Rights Reserved -