Ask a Question related to PHP Bugs, Design and Development.
-
zero at tilt dot eu dot org #1
#22427 [Com]: Missing Form Post Data
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
[url]http://bugs.php.net/22427[/url]
--
Edit this bug report at [url]http://bugs.php.net/?id=22427&edit=1[/url]
zero at tilt dot eu dot org Guest
-
redirect but with post data - mimick form post behaviour
Any thoughts on how to mimic result of submitting form data via POST Method? I have some code that sanitizes some submitted formfields and i'd like... -
How to post some data in form of POST action of forms in asp?
Hi there, I need to post some information into an ASP page (mypage.asp), in form of POST action which I do with the following code: 'contents... -
#24013 [Com]: Missing Form Post Data
ID: 24013 Comment by: michael dot lindner at gmlindner dot de Reported By: webmaster at dtshowtime dot lu dot eu dot org... -
#24753 [Opn]: missing character in POST data
ID: 24753 User updated by: robin at newloop dot com Reported By: robin at newloop dot com Status: Open Bug Type: ... -
#24753 [Fbk->Opn]: missing character in POST data
ID: 24753 User updated by: robin at newloop dot com Reported By: robin at newloop dot com -Status: Feedback... -
thisisrobg at gmail dot com #2
#22427 [Com]: Missing Form Post Data
ID: 22427
Comment by: thisisrobg at gmail dot com
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:
Not sure if it exactly the same problem but POST related.
- PHP5.2.0RC6-dev
- Apache 2.2.3
- IE6
Code
<form name="processing" method="POST" action="sqlprocess.php">
SQL : <input type="text" name="sqlstring" /><br>
SQL2 : <input type="text" name="sqlstring2" /><br>
SQL3 : <input type="text" name="sqlstring3" />
<input type="submit" value="SUBMIT"/>
</form>
/*sqlprocess.php */
$query = $_REQUEST["sqlstring"];
$query2 = $_REQUEST["sqlstring2"];
$query3 = $_REQUEST["sqlstring3"];
print "Query: " . $query . "<br>";
print "Query2: " . $query2 . "<br>";
print "Query3: " . $query3 . "<br>";
---------
Problem: None of the field show up when request.
Experiments
1. Change form method to GET and it work perfectly.
2. Add/Remove fields make no different, still get nothing.
3. Change $_REQUEST to $_POST or $HTTP_POST_VARS make no different,
still get nothing.
4. Change browser to Firefox 2.0b1 and it works fine.
5. Change browser to Opera 9.01 builds 8552 and it works fine.
Expecting the problem to be incompatibility between PHP5.2 and IE6.
I was using PHP5.1.6 and IIS and POST method works.
Previous Comments:
------------------------------------------------------------------------
[2006-10-07 04:29:05] zero at tilt dot eu dot org
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.
------------------------------------------------------------------------
[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.
------------------------------------------------------------------------
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
[url]http://bugs.php.net/22427[/url]
--
Edit this bug report at [url]http://bugs.php.net/?id=22427&edit=1[/url]
thisisrobg at gmail dot com Guest
-
celtic at sairyx dot org #3
#22427 [Com]: Missing Form Post Data
ID: 22427
Comment by: celtic at sairyx 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:
I'm experiencing the same problem.
Server's running Apache 2 on a Windows Server 2003 machine.
IE 6.0, Windows XP SP 2, and about 90% of the time, POST data never
reaches my PHP script.
Firefox 1.5 in the same conditions, and it runs perfectly.
It does seem suspiciously like an IE bug, but this seems too big to be
a coincidence that IE never sends POST data to only these PHP
applications.
Previous Comments:
------------------------------------------------------------------------
[2006-10-18 08:15:50] thisisrobg at gmail dot com
Not sure if it exactly the same problem but POST related.
- PHP5.2.0RC6-dev
- Apache 2.2.3
- IE6
Code
<form name="processing" method="POST" action="sqlprocess.php">
SQL : <input type="text" name="sqlstring" /><br>
SQL2 : <input type="text" name="sqlstring2" /><br>
SQL3 : <input type="text" name="sqlstring3" />
<input type="submit" value="SUBMIT"/>
</form>
/*sqlprocess.php */
$query = $_REQUEST["sqlstring"];
$query2 = $_REQUEST["sqlstring2"];
$query3 = $_REQUEST["sqlstring3"];
print "Query: " . $query . "<br>";
print "Query2: " . $query2 . "<br>";
print "Query3: " . $query3 . "<br>";
---------
Problem: None of the field show up when request.
Experiments
1. Change form method to GET and it work perfectly.
2. Add/Remove fields make no different, still get nothing.
3. Change $_REQUEST to $_POST or $HTTP_POST_VARS make no different,
still get nothing.
4. Change browser to Firefox 2.0b1 and it works fine.
5. Change browser to Opera 9.01 builds 8552 and it works fine.
Expecting the problem to be incompatibility between PHP5.2 and IE6.
I was using PHP5.1.6 and IIS and POST method works.
------------------------------------------------------------------------
[2006-10-07 04:29:05] zero at tilt dot eu dot org
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.
------------------------------------------------------------------------
[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.
------------------------------------------------------------------------
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
[url]http://bugs.php.net/22427[/url]
--
Edit this bug report at [url]http://bugs.php.net/?id=22427&edit=1[/url]
celtic at sairyx dot org Guest
-
arek_felinczak at o2 dot pl #4
#22427 [Com]: Missing Form Post Data
ID: 22427
Comment by: arek_felinczak at o2 dot pl
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:
I had the same problem with empty $_POST table.
In my case solution was to remove post_max_size line from php.ini.
In php.ini i had
post_max_size = 16000
instead of default post_max_size = 8M
Previous Comments:
------------------------------------------------------------------------
[2006-12-07 22:30:59] celtic at sairyx dot org
I'm experiencing the same problem.
Server's running Apache 2 on a Windows Server 2003 machine.
IE 6.0, Windows XP SP 2, and about 90% of the time, POST data never
reaches my PHP script.
Firefox 1.5 in the same conditions, and it runs perfectly.
It does seem suspiciously like an IE bug, but this seems too big to be
a coincidence that IE never sends POST data to only these PHP
applications.
------------------------------------------------------------------------
[2006-10-18 08:15:50] thisisrobg at gmail dot com
Not sure if it exactly the same problem but POST related.
- PHP5.2.0RC6-dev
- Apache 2.2.3
- IE6
Code
<form name="processing" method="POST" action="sqlprocess.php">
SQL : <input type="text" name="sqlstring" /><br>
SQL2 : <input type="text" name="sqlstring2" /><br>
SQL3 : <input type="text" name="sqlstring3" />
<input type="submit" value="SUBMIT"/>
</form>
/*sqlprocess.php */
$query = $_REQUEST["sqlstring"];
$query2 = $_REQUEST["sqlstring2"];
$query3 = $_REQUEST["sqlstring3"];
print "Query: " . $query . "<br>";
print "Query2: " . $query2 . "<br>";
print "Query3: " . $query3 . "<br>";
---------
Problem: None of the field show up when request.
Experiments
1. Change form method to GET and it work perfectly.
2. Add/Remove fields make no different, still get nothing.
3. Change $_REQUEST to $_POST or $HTTP_POST_VARS make no different,
still get nothing.
4. Change browser to Firefox 2.0b1 and it works fine.
5. Change browser to Opera 9.01 builds 8552 and it works fine.
Expecting the problem to be incompatibility between PHP5.2 and IE6.
I was using PHP5.1.6 and IIS and POST method works.
------------------------------------------------------------------------
[2006-10-07 04:29:05] zero at tilt dot eu dot org
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.
------------------------------------------------------------------------
[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.
------------------------------------------------------------------------
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
[url]http://bugs.php.net/22427[/url]
--
Edit this bug report at [url]http://bugs.php.net/?id=22427&edit=1[/url]
arek_felinczak at o2 dot pl Guest
-
elio at tondo dot it #5
#22427 [Com]: Missing Form Post Data
ID: 22427
Comment by: elio at tondo dot it
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:
I am experiencing the same problem reported on 29 Aug 2006 by "egil at
egil dot net". I can add some more details:
- I confirm that it happens only with IE;
- it is triggered when a character between 0x80 and 0x9f is used in a
form field (e.g. the "Word" quotation marks, but also the Euro symbol)
-- please note that these are the transposition in the "high half" part
of extended ASCII of the 32 "control characters" of ASCII (0x00 -
0x1f);
- it has some relationship with character encoding;
- I can reproduce it on Linux with Apache 2 on Fedora 4 - 6 if I don't
force "AddDefaultCharset UTF-8" in httpd.conf (the default in Fedora);
with this directive the problem dies not happen, but the "strange"
characters are interpreted incorrectly (because the file is not UTF8);
- I cannot reproduce it on Linux Mandrake 10 / Apache 2;
- I cannot reproduce it on Windows XP / XAMPP (Apache 2).
A further interesting detail: it happens only if the file containing
the form has the .php extension; if it has the .htm extension it does
not happen! (please note that I am using plain HTML for the form and
some PHP to show the results).
From all of the above, it looks like it is not a PHP bug, but instead a
IE6 bug that is triggered by some combination of MIME types and
character encodings.
I am going to prepare a simpler test case (I am currently using a
rather complicated page with a multi part form that I extracted from an
application that was working on Mandrake and ceased to work on Fedora,
and worked again by adding a dummy hidden field as the first one in the
form...). When it will be ready I will post it here.
In the meantime, does anyone know if a similar problem has been
reported elsewhere?
Previous Comments:
------------------------------------------------------------------------
[2007-02-19 15:27:27] arek_felinczak at o2 dot pl
I had the same problem with empty $_POST table.
In my case solution was to remove post_max_size line from php.ini.
In php.ini i had
post_max_size = 16000
instead of default post_max_size = 8M
------------------------------------------------------------------------
[2006-12-07 22:30:59] celtic at sairyx dot org
I'm experiencing the same problem.
Server's running Apache 2 on a Windows Server 2003 machine.
IE 6.0, Windows XP SP 2, and about 90% of the time, POST data never
reaches my PHP script.
Firefox 1.5 in the same conditions, and it runs perfectly.
It does seem suspiciously like an IE bug, but this seems too big to be
a coincidence that IE never sends POST data to only these PHP
applications.
------------------------------------------------------------------------
[2006-10-18 08:15:50] thisisrobg at gmail dot com
Not sure if it exactly the same problem but POST related.
- PHP5.2.0RC6-dev
- Apache 2.2.3
- IE6
Code
<form name="processing" method="POST" action="sqlprocess.php">
SQL : <input type="text" name="sqlstring" /><br>
SQL2 : <input type="text" name="sqlstring2" /><br>
SQL3 : <input type="text" name="sqlstring3" />
<input type="submit" value="SUBMIT"/>
</form>
/*sqlprocess.php */
$query = $_REQUEST["sqlstring"];
$query2 = $_REQUEST["sqlstring2"];
$query3 = $_REQUEST["sqlstring3"];
print "Query: " . $query . "<br>";
print "Query2: " . $query2 . "<br>";
print "Query3: " . $query3 . "<br>";
---------
Problem: None of the field show up when request.
Experiments
1. Change form method to GET and it work perfectly.
2. Add/Remove fields make no different, still get nothing.
3. Change $_REQUEST to $_POST or $HTTP_POST_VARS make no different,
still get nothing.
4. Change browser to Firefox 2.0b1 and it works fine.
5. Change browser to Opera 9.01 builds 8552 and it works fine.
Expecting the problem to be incompatibility between PHP5.2 and IE6.
I was using PHP5.1.6 and IIS and POST method works.
------------------------------------------------------------------------
[2006-10-07 04:29:05] zero at tilt dot eu dot org
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.
------------------------------------------------------------------------
[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--
------------------------------------------------------------------------
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
[url]http://bugs.php.net/22427[/url]
--
Edit this bug report at [url]http://bugs.php.net/?id=22427&edit=1[/url]
elio at tondo dot it Guest
-
jpsoren at gmail dot com #6
#22427 [Com]: Missing Form Post Data
ID: 22427
Comment by: jpsoren at gmail dot com
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:
I experience this problem as well.
* Happens both with and without enctype set for form
* Happens in IE6 and IE7, NOT in Firefox 1.5/2
* Changing form to GET works flawlessly
* Input can range from a few text fields (1-6) or a mix of text fields
and file fields, or just file fields (enctype set when file fields
exist) and POST data will come up empty
* Often times hitting reload and selecting to resubmit the form data
will have the POST data show up
* NO POST data will show up - I don't just lose some early fields
PHP 5.2.x (module), Apache 2.2.x, Windows XP SP2
This is a serious issue. Doesn't seem like anyone in this thread has
found any sort of solution. Please post (or GET, ha) if you have any
insight.
Previous Comments:
------------------------------------------------------------------------
[2007-02-22 15:25:15] elio at tondo dot it
I am experiencing the same problem reported on 29 Aug 2006 by "egil at
egil dot net". I can add some more details:
- I confirm that it happens only with IE;
- it is triggered when a character between 0x80 and 0x9f is used in a
form field (e.g. the "Word" quotation marks, but also the Euro symbol)
-- please note that these are the transposition in the "high half" part
of extended ASCII of the 32 "control characters" of ASCII (0x00 -
0x1f);
- it has some relationship with character encoding;
- I can reproduce it on Linux with Apache 2 on Fedora 4 - 6 if I don't
force "AddDefaultCharset UTF-8" in httpd.conf (the default in Fedora);
with this directive the problem dies not happen, but the "strange"
characters are interpreted incorrectly (because the file is not UTF8);
- I cannot reproduce it on Linux Mandrake 10 / Apache 2;
- I cannot reproduce it on Windows XP / XAMPP (Apache 2).
A further interesting detail: it happens only if the file containing
the form has the .php extension; if it has the .htm extension it does
not happen! (please note that I am using plain HTML for the form and
some PHP to show the results).
From all of the above, it looks like it is not a PHP bug, but instead a
IE6 bug that is triggered by some combination of MIME types and
character encodings.
I am going to prepare a simpler test case (I am currently using a
rather complicated page with a multi part form that I extracted from an
application that was working on Mandrake and ceased to work on Fedora,
and worked again by adding a dummy hidden field as the first one in the
form...). When it will be ready I will post it here.
In the meantime, does anyone know if a similar problem has been
reported elsewhere?
------------------------------------------------------------------------
[2007-02-19 15:27:27] arek_felinczak at o2 dot pl
I had the same problem with empty $_POST table.
In my case solution was to remove post_max_size line from php.ini.
In php.ini i had
post_max_size = 16000
instead of default post_max_size = 8M
------------------------------------------------------------------------
[2006-12-07 22:30:59] celtic at sairyx dot org
I'm experiencing the same problem.
Server's running Apache 2 on a Windows Server 2003 machine.
IE 6.0, Windows XP SP 2, and about 90% of the time, POST data never
reaches my PHP script.
Firefox 1.5 in the same conditions, and it runs perfectly.
It does seem suspiciously like an IE bug, but this seems too big to be
a coincidence that IE never sends POST data to only these PHP
applications.
------------------------------------------------------------------------
[2006-10-18 08:15:50] thisisrobg at gmail dot com
Not sure if it exactly the same problem but POST related.
- PHP5.2.0RC6-dev
- Apache 2.2.3
- IE6
Code
<form name="processing" method="POST" action="sqlprocess.php">
SQL : <input type="text" name="sqlstring" /><br>
SQL2 : <input type="text" name="sqlstring2" /><br>
SQL3 : <input type="text" name="sqlstring3" />
<input type="submit" value="SUBMIT"/>
</form>
/*sqlprocess.php */
$query = $_REQUEST["sqlstring"];
$query2 = $_REQUEST["sqlstring2"];
$query3 = $_REQUEST["sqlstring3"];
print "Query: " . $query . "<br>";
print "Query2: " . $query2 . "<br>";
print "Query3: " . $query3 . "<br>";
---------
Problem: None of the field show up when request.
Experiments
1. Change form method to GET and it work perfectly.
2. Add/Remove fields make no different, still get nothing.
3. Change $_REQUEST to $_POST or $HTTP_POST_VARS make no different,
still get nothing.
4. Change browser to Firefox 2.0b1 and it works fine.
5. Change browser to Opera 9.01 builds 8552 and it works fine.
Expecting the problem to be incompatibility between PHP5.2 and IE6.
I was using PHP5.1.6 and IIS and POST method works.
------------------------------------------------------------------------
[2006-10-07 04:29:05] zero at tilt dot eu dot org
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.
------------------------------------------------------------------------
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
[url]http://bugs.php.net/22427[/url]
--
Edit this bug report at [url]http://bugs.php.net/?id=22427&edit=1[/url]
jpsoren at gmail dot com Guest



Reply With Quote

