might be my php code has problem the following code fragment will keep "+" 
to "+" but "$" to "%24"


<?
echo urlencode($_POST['test']);
?>
<form action='testp.php' method=POST>
<input type=text value='' name=test>
<?php
        $test=urldecode($test);
?>
<input type=submit value='submit'>
</form>






"John W. Holmes" <[EMAIL PROTECTED]>
11/19/2002 04:12 PM
Please respond to holmes072000

 
        To:     <[EMAIL PROTECTED]>
        cc:     <[EMAIL PROTECTED]>
        Subject:        RE: [PHP] plus sign has changed to space after POST


You have to encode it on one end, and decode it on the other.

Use

$url_safe = urlencode($string);

and pass $url_safe in the URL. Then on the receiving end, use

$back_to_normal = urldecode($url_safe_string);

---John Holmes...

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, November 19, 2002 7:06 PM
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> Subject: RE: [PHP] plus sign has changed to space after POST
>
> I have tried this but the problem is it change the other special
character
> as well.  For example, $ to %24, etc.
>
> If people pass a string like "abc+def$ghi", I want to save the exact
> string to the database rather than "abc+def%24ghi".  I can't do a
> translation of %24 to $ before saving the string  to the database
because
> user might input a string like "abc+%3423324hello%23ddd"
>
>
>
>
>
>
> "John W. Holmes" <[EMAIL PROTECTED]>
> 11/19/2002 03:52 PM
> Please respond to holmes072000
>
>
>         To:     <[EMAIL PROTECTED]>, <[EMAIL PROTECTED]>
>         cc:
>         Subject:        RE: [PHP] plus sign has changed to space after
> POST
>
>
> > -----Original Message-----
> > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> > Sent: Tuesday, November 19, 2002 6:43 PM
> > To: [EMAIL PROTECTED]
> > Subject: [PHP] plus sign has changed to space after POST
> >
> > After upgrade to 4.2.3, plus "+" sign has changed to space after
POST.
> I
> > have checked the mailing list but can't find any help to turn this
off
> > forever!  is this a bug in PHP?
> >
> > thanks
>
> Spaces are encoded as plus signed or %20 in the URL, depending on the
> method you use. PHP will automatically urldecode() the values passed
in
> the URL apparently. If you are trying to pass an actual + sign, you
need
> to encode it with urlencode() or rawurlencode().
>
> ---John Holmes...
>
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>




--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


Reply via email to