CGI-BBS > ホームページ記述言語 > iモード > 約2MBのテキスト検索結果をページに分けて表示したい


カレッヂ
カレッヂ


質問者 岡本  投稿日 1/25(木) 03:41:06
約2MBのテキストデータをキーワードで検索し、ヒットした行を検索結果(WindowsテキストエディタのGREP機能のようなもの)として、複数ページに分けて表示したいのです。iモードは一度に受信できるデータ量が限られておりますので、複数ページにわけたいのです。複数ページに分けるロジックはどのようにすればよろしいのでしょうか?Perlだけではムリなのでしょうか?データベースソフトと連動しなければならないのでしょうか?また、open関数で2MBのテキストデータを開くとサーバーにかなりの負担がかかるのでしょうか?
回答者  [削除]  投稿日 1/25(木) 14:37:07
>複数ページに分けるロジックはどのようにすればよろしいのでしょうか?

CGIで出力する際に
1〜10件目を表示<a href="xxx.cgi?11">次の10件</a>
こんな感じで出力して
「次の10件」をクリックしたときに何件目から表示すればいいかをCGIに与えればいいんじゃないでしょうか。

ここまで説明しといてこんなこと言うのもなんですが
実はこういうスクリプトは作ったことがないです。
今から挑戦してみます。
回答者 しあわせのツボ  [削除]  投稿日 1/25(木) 16:28:28
MiniBBSや簡易データベース等のページ処理が参考になると思います。

openだけなら、対象ファイルのサイズは気にしなくて大丈夫です。
ただ、ファイルの内容を全て変数に読み込んだりすると、その分メモリを必要とします。
1行ずつ処理するようにした方がいいでしょう。
回答者  [削除]  投稿日 1/25(木) 17:34:15
http://degital.net/~rimse/cgi-bin/search/search.html
↑短時間で作ったのでかなり適当に作ってあります。
質問者 岡本  [削除]  投稿日 1/26(金) 00:47:28
回答ありがとうございました。早速、自分のマシンWin95にperlやapacheをインストールして動かしてみました。もうすこし勉強してみます。

返信(回答)する


Web裏技