Hi!
I ran into this exotic bug and would appreciate a handy help!
In this config: Windows98, Apache1.3.20, MySQL3.23.42, PHP4.1.2, Internet Explorer 5 my scripts work fine.
I developed my hardware and my op. system to WinXP Pro some weeks ago, more exactly it is a dual boot system (Win98 for gaming and compatibility + WinXP Pro for hard work) now. This is a 2 GHz P4 machine with 512 MB Rambus DRAM.
I installed the same elements for both system except the IE6 of course. Running some of my scripts on WinXP system - when the output exceeds about 40 kilobytes (experimental value) -
comes the bug:
Case 1: i click on the script name, the IE6 progress bar says it is over but nothing happens nothing changes in the window.
Case 2: i shift-click on the script name (output to new window) and one of these may happen
a) after a normal response time the IE says "The page cannot be displayed" (or something like that when the URL is unreachable)
b) the hourglass becomes mad blinking, the URL of the script and "web site found" alternates in the statusbar rapidly. In some cases after some seconds it stops but the output contains trash characters or wrong formatting characters so it is not correct. In other cases the blinking madness never stops: i terminate it by clicking the stop button.
I tried some other 4.x versions of PHP, everything the same bad.
I tried Netscape 4.77 and what a surprise IT WORKED!
I tried booting to win98 (with IE5) and everything was fine: everything worked as i expected.
First time I feel suspicious about some wrong script but the behavior of <?php phpinfo(); ?> was just the same.
I found the 40 kb magic limit when triing to understand what happens, what is the rule in this behavior. I did not found a rule because the outcome changed over time. The only rule was that the relatively long output caused the bug but the shorter one did not. For example to print out a 300 row, 5 column table from a mySQL database did never work but printing the first 272 row was OK. However I did not find a rule: later on only the print of first 254 row was error free.
It seems to me that IE6 is guilty but i am not sure.
I want to work with WinXP. I want to get back my fine working system.
Please help!
PS: Maybe a problem of timing or caching? Some days ago I inserted ob_start(); ( without ob_end_flush(); )
into the first part of the script.
Now IT WORKS in WinXP too!
But i do not know why... So i can not rest.
Anyone got a great idea?