ID: 16114 User updated by: [EMAIL PROTECTED] -Summary: fputs doesn't send all data Reported By: [EMAIL PROTECTED] -Status: Feedback +Status: Open Bug Type: Sockets related Operating System: Windows 2000 AS PHP Version: 4.1.1 New Comment:
The lastest snapshot(Oct 13, 2002; php4-win32-latest.zip) works almost fine. This code: $socket = @fsockopen( 'localhost', 80, $err1, $err2 ); if (!$socket) die('socket not open'); $result = fputs( $socket, $request ); #$request holds a well formed MIME request for posting a file. fflush( $socket ); //echo "<pre>>>\r\n".str_replace('</pre>', '</pre>', $request)."<<\r\n</pre>"; fclose( $socket ); This works if the file being posted is small(can't say how much). The point is that if I uncomment the echo line before fclose(), it sends all the data(up to 10.5M=11,076,608 bytes I sent), but without the echo line, it seems that fclose() executes in such a way that chops the socket's output stream and the Web Server does not executes the receive.php script. The echo line may be replace by sleep(8) and still working. Summary: Give it time before fclose() a works; otherwise, unstable. Manu. Previous Comments: ------------------------------------------------------------------------ [2002-09-26 10:38:03] [EMAIL PROTECTED] What's the status on this? Are you sure this is an issue with fputs and not instead an issue with file upload to a PHP script? What are you connecting to? If you are testing again, please try the latest snapshot; more changes have been made. http://snaps.php.net/win32/ ------------------------------------------------------------------------ [2002-07-21 12:42:05] [EMAIL PROTECTED] I downloaded the file php4-win32-200207182200.zip and made a test uploading a 3.2MB file. It didn't work. With smallers files(a test with a 13b one) works. I'll do a test trying to establish the failure boundaries. Manu. ------------------------------------------------------------------------ [2002-07-18 21:49:39] [EMAIL PROTECTED] I will do. In this moment I've been facing troubles with my Internet connection, and I cannot download the snapshots. Manu. ------------------------------------------------------------------------ [2002-07-10 12:29:00] [EMAIL PROTECTED] Could you try this on 4.2.1, and the latest snapshot on http://snaps.php.net/win32/ ? The internal streams subsystem has been implemented in the snapshots, which is a complete rewrite. Thanks, -Jason ------------------------------------------------------------------------ [2002-03-25 16:12:18] [EMAIL PROTECTED] I did also a test(without chunking the data), I could send 48653 bytes, but couldn't 49229 bytes. With the chunking feature it must be some bug in my code, cause didn't work with 48653 bytes. Manu. ------------------------------------------------------------------------ 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/16114 -- Edit this bug report at http://bugs.php.net/?id=16114&edit=1