server push



I have a snippet of code I got from a fellow named Frank Reynold's site.
I've amended it such that if I have a file, which I call getdata.txt, which
is a text file which an application writes to a server sporadically and
frequently, and I wish that text to be visible in a browser window, this
accomplishes that. Anytime getdata.txt is changed on the site, it is
reflected in the browser.

HOWEVER, since a php script times out (typically in 30 seconds, the
default), this wonderful little thing dies every 30 seconds. Can anyone tell
me a way (other than changing the time out value in php.ini !) how to make
this run indefinitely. Any kind of hack someone can point me in the
direction of here? Thanks, Ike

<?php
$file = "./getdata.txt";
$maxexectutiontime=10;//set in php.ini
$sep = "ofaLlTherCrzyThInggsIhaveayeard";
$a=0;
$b=0;
if (ereg(".*MSIE.*",$HTTP_SERVER_VARS["HTTP_USER_AGENT"]))
{
# If IE, spit out one time and exit
header("Cache-Control: no-cache");
header("Pragma: no-cache");
header("Content-type: text/plain");
header("Content-size: " . filesize($file));
readfile($file);
}
else
{
# if not IE, give the browser a try
header("Content-Type: multipart/x-mixed-replace; boundary=$sep");
do {
print "Content-Type: text/plain\n\n";
readfile($file);
print "\n--$sep\n";
flush();
$mt = filemtime($file);
do {
$a++;
if($a>=$maxexectutiontime-1){
$b=-1;
}else{
sleep (1);
# we won't output the same data twice.
clearstatcache();
}
} while ($mt == filemtime($file) && $b==0);
} while ($b==0);
}
?>


.



Relevant Pages

  • Re: server push
    ... Anytime getdata.txt is changed on the site, ... reflected in the browser. ... HOWEVER, since a php script times out (typically in 30 seconds, the ... this wonderful little thing dies every 30 seconds. ...
    (comp.lang.php)
  • Re: Printing code for specific pages
    ... Try this snippet: ... I am aware of the print function within the browser. ... for similar code that I will allow printing regardless if the end user has ...
    (microsoft.public.publisher)
  • Re: Printing code for specific pages
    ... Try this snippet: ... I am aware of the print function within the browser. ... for similar code that I will allow printing regardless if the end user has ...
    (microsoft.public.publisher)
  • Re: Printing code for specific pages
    ... Try this snippet: ... I am aware of the print function within the browser. ... for similar code that I will allow printing regardless if the end user ...
    (microsoft.public.publisher)
  • Re: GridBagLayout - How grow my columns correctly?
    ... My fault. ... The snippet looked good to me in browser. ... But if it's a usenet rule to ...
    (comp.lang.java.gui)