I did a quick test, and when I post a form variable called test with a value of 1+1=2, the HTTP request looks like this:
POST /test.php HTTP/1.1
User-Agent: Mozilla/5.0 Galeon/1.2.6 (X11; Linux i686; U;) Gecko/20020916
Accept-Charset: ISO-8859-1, utf-8;q=0.66, *;q=0.66
So, that %2B would have to get decoded twice to result in a space.
Stan, do you have a way to see what the HTTP request is? You mention being on a BSD box, so I assume you have tcpdump? Also, is this behavior consistent with different browsers?
John W. Holmes wrote:
The plus sign is used to signify a space in some URL encoding. PHP is
probably thinking the text is encoded and it's removing the plus sign.
Not sure on a solution.
From: Stan [mailto:stann@;pobox.sk]
Sent: Monday, October 28, 2002 6:27 PM
To: [EMAIL PROTECTED]
Subject: [PHP] Plus sign changing to space in html form
When i post a string containing plus sign with htmp form to a php scritp,
the '+' is changed to space. e.g: i enter 'as+df' to a text input but $_POST returns 'as df' instead.
It must be in php or apache configuration bcause i have this problem only
on sytem with FreeBSD. On windows it works as expected.
Know someone how could i make the '+' left intact? Please help.
<form actiom='test.php' method=POST>
<input type=text value='' name=test>
<input type=submit value='submit'>
-- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php