ID: 17774 Comment by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Status: Open Bug Type: Scripting Engine problem Operating System: FREEBSD 4.5-STABLE PHP Version: 4.0CVS-2002-06-15 New Comment:
An ammendmant to my last two posts. I would expect the script to put a '1' into wank.txt if somebody presses the STOP button on there browser. However the output I am getting is a '0' to say it disconnected regulary. Previous Comments: ------------------------------------------------------------------------ [2002-09-25 08:33:25] [EMAIL PROTECTED] Oh yeah, running that script, if I press the STOP button halfway through, after a while it will output "0" into wank.txt, which is wrong, it should put 2 is it? for connection closed. ------------------------------------------------------------------------ [2002-09-25 08:31:31] [EMAIL PROTECTED] I found there may be flaws with that code, so I wrote something else to test if the function was fixed, and it appears not, here is the code, if somebody cancels I would expect it to put '0' into wank.txt :- <? function exitfp() { $fp = fopen("wank.txt","w"); fputs($fp, connection_status()); fclose($fp); } register_shutdown_function('exitfp'); if(connection_aborted() != true){print "0";} flush(); ignore_user_abort(true); $m = '50'; while(connection_aborted() != true and $m > $a){ sleep('1'); print connection_status(); flush(); $a = $a + 1; } exitfp(); ?> ------------------------------------------------------------------------ [2002-09-25 07:38:18] [EMAIL PROTECTED] According to Bug #17265 this problem should be fixed rite? Well I downloaded the latest CVS like 5 minutes ago. THe following code snippets should return into a file that the connection was aborted, if this function was really fixed, rite?? well the outputs I am getting into my temp files to check the output of the script is "6077440 - 6076648 - 0 - not aborted - Keep-Alive" Heres the script :- while(!feof($pl_of) and !connection_aborted()) { $pl_buffer = fread($pl_of, 1024); echo($pl_buffer); flush(); $pl_sent = $pl_sent + 1024; } fclose ($pl_of); if ($pl_sent >= $pl_filesize){ $pl_totalsent = "100%"; }else{ $pl_totalsent = round((100 / $pl_filesize * $pl_sent),2) . "%"; } if (connection_aborted() == true){ $temp = 'aborted'; }else{ $temp = 'not aborted'; } $pl_totalsent = "$pl_sent - $pl_filesize - " . connection_status() . " - " . $temp . " - " . $_SERVER['HTTP_CONNECTION']; ------------------------------------------------------------------------ [2002-07-07 13:10:32] [EMAIL PROTECTED] Has this bug been looked in to at all? Under FreeBSD, connection_status /always/ returns 0. I've never tried it with any other flavours of BSD. Regards, David. ------------------------------------------------------------------------ [2002-06-29 20:52:35] [EMAIL PROTECTED] Just thought id enquire a little about this Bug, has it been a bug fora long time? Do you think it will be sorted any time soon ? Do you think we may see it repaired for PHP 4.3.0-STABLE ? ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/17774 -- Edit this bug report at http://bugs.php.net/?id=17774&edit=1