Foros del Web » Programando para Internet » PHP »

urlencode, rawurldecode y el RFC 1738

Estas en el tema de urlencode, rawurldecode y el RFC 1738 en el foro de PHP en Foros del Web. Saludos... Espero alguien pueda aclararme este inconveniente. Tengo una llave encriptada por RSA para autentificación telefónica. El problema es que al enviar la llave pública ...
  #1 (permalink)  
Antiguo 15/09/2004, 15:38
Avatar de sism82  
Fecha de Ingreso: octubre-2003
Ubicación: Guadalajara
Mensajes: 865
Antigüedad: 14 años, 1 mes
Puntos: 1
urlencode, rawurldecode y el RFC 1738

Saludos...

Espero alguien pueda aclararme este inconveniente.
Tengo una llave encriptada por RSA para autentificación telefónica. El problema es que al enviar la llave pública por URL, la codifico con urlencode($key), y al recibirla hago urldecode($key). Pero no funciona. Al parecer hay un problema con los signos "+" en la decodificación. Tengo php5 en ambos servidores (el que envia y el que recibe). Hice la siguiente prueba:

Código PHP:
$key '+';
echo 
'Original Plus Sign:'.$key;
echo 
'<br />UrlEncoded Plus Sign:'.urlencode($key);
echo 
'<br />UrlDecoded Plus Sign:'.urldecode($key);
echo 
'<br /><br /><br />';

$key '+';
echo 
'Original Plus Sign:'.$key;
echo 
'<br />rawUrlEncoded Plus Sign:'.rawurlencode($key);
echo 
'<br />rawUrlDecoded Plus Sign:'.rawurldecode($key); 
Y los resultados son:

Código:
Original Plus Sign:+
UrlEncoded Plus Sign:%2B
UrlDecoded Plus Sign:


Original Plus Sign:+
rawUrlEncoded Plus Sign:%2B
rawUrlDecoded Plus Sign:+
como ven, cuandos e utiliza urlencode sobre el signo, al decodificarlo no me devuelve el signo, sino un espacio, no vacio, sino un caracter espacio.

Naturalmente el problema lo tengo resuelto usando rawurldecode y rawurlencode, sin embargo no encuentro la razón por la que urlencode y urldecode no coinciden.

Ideas?
  #2 (permalink)  
Antiguo 15/09/2004, 16:06
Avatar de sism82  
Fecha de Ingreso: octubre-2003
Ubicación: Guadalajara
Mensajes: 865
Antigüedad: 14 años, 1 mes
Puntos: 1
error estupido como suele suceder :P

problema de pasar las variables como referencia...

un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:45.