ID: 22427 Comment by: zero at tilt dot eu dot org Reported By: jroland at uow dot edu dot au Status: No Feedback Bug Type: *General Issues Operating System: Windows XP / 2000 PHP Version: 4.2.3 New Comment:
Same prob, PHP5 in cgi, Apache and env REQUEST_METHOD is POST, there is a content length, but $_POST is empty... This is not a prob with my browser. Tested with Opera 9 and Firefox 1.5. And oh, no prob with an other server :/ Weird. Previous Comments: ------------------------------------------------------------------------ [2006-09-14 13:06:50] emil dot hall at gamereactor dot se We must be talking about several different bugs here. But the bug where some fields are missing from $_POST is NOT a PHP bug, it's all Internet Explorer's fault. This HTML reproduces the bug in IE6: <form method="post" action="whatever" enctype="multipart/form-data"> <input type="text" name="field1" value="1"> <input type="text" name="field2" value="2 "> <input type="checkbox" name="field3" value="3"> <input type="submit"> </form> The weird character in the second input field will mess up IE's submit. Characters that confuse IE include: three-dots-as-one-char aka chr(133) the long dash aka chr(150) and the double quotation mark aka chr(147) All very common when you copy&paste from MS Word, just like Egil said. A packet sniffer reveals the broken POST request: (some irrelevant headers have been removed) POST /whatever HTTP/1.1 Content-Type: multipart/form-data; boundary=---------------7d6399243401fe field1" 1 ---------------7d6399243401fe Content-Disposition: form-data; name="field2" 2. ---------------7d6399243401fe-- Submit the same form with Firefox and the difference is obvious: POST /whatever HTTP/1.1 Content-Type: multipart/form-data; boundary=------------------41184676334 ------------------41184676334 Content-Disposition: form-data; name="field1" 1 ------------------41184676334 Content-Disposition: form-data; name="field2" 2. ------------------41184676334-- ------------------------------------------------------------------------ [2006-08-29 18:16:32] egil at egil dot net Sorry for flooding this one, but I have noticed something else that I think is important here. I am not always getting this bug with IE6 either, it depends on the text I submit into one of my textarea or text fields. If one of them containts a double quotation mark of the type you get if you press shift-2 within Word (not the standard double quotation mark, which works fine) and copy/paste the text into a textarea or textfield. Please contact me if you need a better explaination and/or testdata. ------------------------------------------------------------------------ [2006-08-29 18:04:31] egil at egil dot net Forgot to mention that I am having this problem with PHP 5.1.4 running on FreeBSD and Apache 1.3.34. ------------------------------------------------------------------------ [2006-08-29 17:57:53] egil at egil dot net I am also getting the exact same problem as "rossi at nelis dot fr" and "gregory dot boyer at limbas dot com". I am not able to reproduce this problem in other browsers than IE6 posting using multipart/form-data as enctype. ------------------------------------------------------------------------ [2006-08-11 15:43:05] gregory dot boyer at limbas dot com we experience the same trouble as "rossi at nelis dot fr" A form is send with POST method and with enctype multipart/form-data, in the target page the first field is missing. It is only occuring in IE6.0, and only with the enctype ------------------------------------------------------------------------ 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/22427 -- Edit this bug report at http://bugs.php.net/?id=22427&edit=1