ビギナーズ CGI

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

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

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

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

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

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


 
 



データベースから必要な情報を取出す

キーワードで検索し、マッチしたデータを取出せるような仕組みを作ってみます。



今度は送信される内容が少ないので GETメソッドを使って内容を送信しています。
GETメソッドで送信したデータは環境変数 $ENV{'QUERY_STRING'} に入っています
ので、それを要素ごとに分解し、連想配列に入れて使います。

このフォームはサンプルの為動作しません

【上記のフォームの内容】

フォーム欄の name は keywd
送信メソッドは GET
送信先は test.cgi


このサンプルソースでは、上記フォームから何らかのキーワードを入れて検索すると、 test.txt というファイルを
読み込み、それぞれの行で検索語にマッチしたデータかどうか判断し、その都度表示します。
ファイルの最後まで行い、最下部に検索でキーワードにマッチした件数を表示して終了します。

記録ファイルを配列に入れ foreach関数で繰り返し、マッチするデータを順次表示しています。
これでは全てを表示してしまうので、ある程度の件数で区切ると良いです。




実際には記録ファイルが大きくなると、その全てを探すので効率が悪く、負荷が高くなりますが、
1件当りのデータ容量が少なければ、数百件程度であれば快適に検索できます。
大量のデータを扱う時はインデックス方式と呼ばれる、記録ファイルから抽出したキーワードを
格納するインデックスファイルを先に生成し、そこから検索する方法が優れているようです。

下の参考リンクで優れた検索エンジンがありますので、それらも参考にして下さい。

【参考リンク】
・ ホームページ内全文検索エンジン msearch 「比較的簡単に設置できて高速です」
・ 全文検索システム Namazu 「設置できる環境であれば少し難しいですがお薦めです」

関連項目

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


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