投稿日:2002年12月15日 作成鷹の巣

No.6963 CGI(Perlスクリプト)で、検索中に「検索中」を表示する方法は?



CGI(Perlスクリプト)で、検索中に「検索中」を表示する方法は?

No.6963 投稿時間:2002年12月15日(Sun) 02:41 投稿者名:sasaki URL:

Perlスクリプトで作成した、Webでのデータ検索(キーワード検索)等で、
検索結果を出す前に、"検索中・・"のようなページをあいだに出す事は
可能でしょうか?(検索結果を表示する迄に数秒~数十秒かかる場合、
あいだに"検索中"の文字または動画Gifなどのページを表示したい)
何か方法わかりましたらお教え下さい。宜しくお願い致します。


バッファーリングしない指定を行います

No.6971 投稿時間:2002年12月15日(Sun) 08:10 投稿者名:OAK URL:

> Perlスクリプトで作成した、Webでのデータ検索(キーワード検索)等で、
> 検索結果を出す前に、"検索中・・"のようなページをあいだに出す事は
> 可能でしょうか?(検索結果を表示する迄に数秒~数十秒かかる場合、
> あいだに"検索中"の文字または動画Gifなどのページを表示したい)
> 何か方法わかりましたらお教え下さい。宜しくお願い致します。

たぶん、自分ではそのような(検索中・・)のを出しているのに、まったく表示されない
という事だと思われます。

この原因はperlが標準出力ポートをバッファーリングしている為です。
C++ならfflush命令でバッファーの内容を出しますが、perlにはこの命令がありません。

なので最初からバッファーリングしない指定を行います。
具体的には以下3行の文を先頭付近に入れてください
select(STDOUT);
$|=1;
select(STDOUT);


|目次|掲示板|過去ログ目次|▲頁先頭|