ID:               22427
 Comment by:       bcoy at chicagoreader 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:

This post exists to try and organize what I've read above.

There appear to be two main issues here.  The special character issue
in IE seems to be well understood at this point.  The fix is to to
translate all those characters into ascii (unicode html entities are
helpful here).

However, it appears that several people, including myself, still have a
length problem.  In my script, I have max_post_size set to 50M and
output_buffering on (as suggested in these comments).  I have an
all-ascii piece of data, which works up to 10021 characters, but fails
at 10022, regardless of what the last character is.  This fails in all
browsers: Safari, Firefox, and IE.  The data is not accessible via
$_POST or $HTTP_POST_VARS.  It fails with or without
enctype="multipart/form-data".  getenv("CONTENT_LENGTH") is 10173 in
Firefox and 10111 in Safari.  If I change to a GET request, I receive an
error indicating that the URI is too long for the server to support.

My setup is:
PHP 5.03
Apache 1.3.33
FreeBSD 4.10


Previous Comments:
------------------------------------------------------------------------

[2007-10-02 06:08:19] solidus_in at yahoo dot com

When the post data contains HTML special entities i.e. "&" it is
stripped off. PHP POst variable only contains data before the first
occurrence of "&"

I am not sure whether it is a bug or something else. I am yet to test
the POST containing other HTML entities. I have been trying to solve the
issue but it remains yet.

Any help there?

------------------------------------------------------------------------

[2007-09-21 08:48:04] umberto at meroni dot name

Hi there,
I solved this problem setting

output_buffering = On

in my PHP.ini.

I hope this helps.
Umberto Meroni

------------------------------------------------------------------------

[2007-09-18 11:57:57] idefix at dwaal dot net

The same problem happens to me (and my users unfortunately).

- PHP Version 5.1.6
- Apache/2.2.3 (CentOS)
- only with enctype="multipart/form-data"
- only with IE6 on WinXP sp2
- _POST is completely empty (count($_POST) === 0)
- Uploaded files are smaller than 3 MB.
- Charset: US-ASCII (both Apache header and Meta-tag)

For some reason only _some_ IE6 WinXP SP2 machines trigger this error.

Opera and Firefox do not seem to trigger this error at all.

------------------------------------------------------------------------

[2007-09-13 20:49:15] lewisagosta at gmail dot com

I am still looking for why this worked... but...

When I changed "$_POST" to "$HTTP_POST_VARS", the form data is now
there.  I think it has something to do with the global variables
setting, but not sure yet.

------------------------------------------------------------------------

[2007-09-03 11:01:01] ben at hceo dot co dot uk

Hi,  

I found the same POST problem.  I have a login form and it works fine
on FireFox and IE 6.0.3790, but not on IE 6.0.2800.  If the username and
password are all one word it works fine on IE 6.0.2800 but if it is made
of 2 or more words it only posts the variables once in every 10 or so
posts.

I read that this problem can be got around by using .htm extension
rather than .php - to get around this I changed the httpd.conf file to
read:

AddType application/x-httpd-php .php .htm

I then changed the extension of my login file to .htm and this seems to
work ok.

------------------------------------------------------------------------

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

Reply via email to