in reply to Can a CGI web-page update live?

You want to do this ...
$|=1;
... in your script. You can search for $| or buffering CGI and find a lot of other nodes about this. You can also take a look at one my nodes Jumble solver CGI that demostrates $|=1

Replies are listed 'Best First'.
Re^2: Can a CGI web-page update live?
by C_T (Scribe) on Oct 06, 2004 at 18:11 UTC
    This is fantastic and does exactly what I want! The only problem is that the browser times out before the script gets everything done.

    Is there a way to tell the browser not to time out?

    CT

    Charles Thomas
    Madison, WI
      You need to keep writting to the browser. Here's a snippet from Jumble solver CGI that does that.
      sub spelled { my $word = shift; my $out=`$speller $word`; chomp($out); if ( ($loopCount++ % 10) == 0 ) { print "." if ($charCount % 4) == 0; print "o" if ($charCount % 4) == 1; print "O" if ($charCount % 4) == 2; print "o" if ($charCount % 4) == 3; $charCount++; print "<BR>\n" if ($charCount % 29 ) == 0; } if ( length($out) > 0 ) { print "[$out]<BR>\n"; } }
      the sub spelled gets called from the permute sub (which is not really the most effiecent way to solve jumbles but is useful for demostrating how to keep the browser from timing out) ... well the sub spelled writes to the browser via the calls to print ...
      print "." if ($charCount % 4) == 0; print "o" if ($charCount % 4) == 1; print "O" if ($charCount % 4) == 2; print "o" if ($charCount % 4) == 3;
      I hope that helps.