ビギナーズ CGI

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

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

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

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

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

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


 
 

CGI 作成の初歩
 HTMLページを表示してみる  文字列の置き換え
 複数行のHTMLページを表示  フォームから入力された値を表示
 ソース内にコメントを書く  ファイルに書き出す
 変数を使った簡単な計算  ファイルから読み込む
 条件式を使って分岐する  フォーム入力からファイルに書き出す
 文字列の扱い方を練習  サブルーチンを使用してみる
 ループを練習 (繰り返し処理)  現在の時刻を取得する
 配列の簡単な使い方  ファイルの簡単な操作をする
 配列の操作を行ってみる  不特定が書き込むファイルの排他処理
 文字列の検索と取出し  CGI から画像を表示する



5. 条件式を使って分岐する

ここでは条件式を使って条件判断をしてみます。
$a には 5 が入っていますので、3番目の条件式で一致し $b5より大きいです との
文字列を入れ、それ以降は実行されません。

実行結果
5より大きいです

上の例では 変数$a10 を入れ、条件式でそれぞれ 50より大きいか10より大きいか・・・ と比較して条件に
一致した場合、変数 $b に文字列を入れ、その後 $b に入った文字を画面に表示しており、条件式で一致した場合、
一致した条件式以降の式は比較、実行されません。
例えば、もし先頭の条件式に一致したのであれば、先頭に設定した実行文が実行され、それ以降は比較されません。


if (条件式1)
{
  条件一致1に一致した場合のみ実行される文
}
条件に一致しない場合は下に順に比較されていきます。
どこかの条件に一致した場合、その条件に設定した実行文
を実行し、それ以降は比較されません。

もし〜ならば
実行文を行う
elsif (条件式2)
{
  条件式2に一致した場合のみ実行される文
}
上記条件式に一致しなかった場合、比較されます。
条件一致した場合は、設定した実行文を実行し、それ以降
は比較されません。

さもなければ
もし〜ならば
実行文を行う
elsif (条件式3)
{
  条件式3に一致した場合のみ実行される文
}
上記条件式に一致しなかった場合、比較されます。
条件一致した場合は、設定した実行文を実行し、それ以降
は比較されません。

さもなければ
もし〜ならば
実行文を行う
else
{
  上記全てに一致しない場合に実行される文
}
上記全てに一致しない場合に実行する文を書きます。



さもなければ
実行文を行う



条件式の最初は必ず if から初めるようにします。
elsif や else は必須ではないので、必要なければ if のみの条件比較でも構いません。
else を使用しない 例えば if elsif のみで構成される条件式にすると、一致しない場合何もしません。

算術比較演算子・文字列比較演算子・論理演算子

条件分岐の条件式は下のように書きます。

$a > 10
左辺 演算子 右辺


算術比較演算子 (数字の比較)
== 左辺と右辺が等しければ (例 $a == 10 ) $a が10と等しければ
!= 左辺と右辺が等しくなければ (例 $a != 10 ) $a が 10と等しくなければ
< 左辺が右辺より小さければ (例 $a < 10 ) $a が 10より小さければ
> 左辺が右辺より大きければ (例 $a > 10 ) $a が 10より大きければ
<= 左辺が右辺より小さい又は等しければ (例 $a <= 10) $a が10より小さい又は等しければ
>= 左辺が右辺より大きい又は等しければ (例 $a >= 10) $a が10より大きい又は等しければ
文字列比較演算子 (文字列の比較)
eq 右辺と左辺の文字列が等しければ
ne 右辺と左辺の文字列が等しくなければ
lt 左辺が右辺より小さければ
gt 左辺が右辺より大きければ
le 左辺が右辺より小さいか等しければ
ge 左辺が右辺より大きいか等しければ
論理演算子
&& 〜かつ〜 「例 (($a > 10) && ($b < 50)) 」 $a が 10より大きく かつ $b が 50より小さければ
|| 〜もしくは〜 「例 (($a > 10) || ($b < 50)) 」 $a が 10より大きい もしくは $b が 50より小さければ
and 〜かつ〜 「例 (($a > 10) and ($b < 50)) 」 $a が 10より大きく かつ $b が 50より小さければ
or 〜もしくは〜 「例 (($a > 10) or ($b < 50)) 」 $a が 10より大きい もしくは $b が 50より小さければ





この条件式を繰り返し処理などと組み合わせると、読み込んだファイルから何かを探して
一致すれば変更など何らかの処理をするなどの動作をさせる事ができます。



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