Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/12/2002, 23:35
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Podrias probar con el código de ejemplo de php.net sobre uso de urldecode():

Código PHP:
$a explode('&'$QUERY_STRING);
$i 0;
while (
$i count($a)) {
   
$b split('='$a[$i]);
   echo 
'Value for parameter 'htmlspecialchars(urldecode($b[0])),
        
' is 'htmlspecialchars(urldecode($b[1])), "<br />\n";
   
$i++;

Adaptalo a tus necesidades .. como veras usan htmlspecialchars() y urldecode ...

o mejor usa este:
Código PHP:
function crossUrlDecode($source) {
$decodedStr '';
$pos 0;
$len strlen($source);
while (
$pos $len) {
$charAt substr ($source$pos1);
if (
$charAt == 'Ã') {
$char2 substr($source$pos2);
$decodedStr .= htmlentities(utf8_decode($char2),ENT_QUOTES,'ISO-8859-1');
$pos += 2;
}
elseif(
ord($charAt) > 127) {
$decodedStr .= "&#".ord($charAt).";";
$pos++;
}
elseif(
$charAt == '%') {
$pos++;
$hex2 substr($source$pos2);
$dechex chr(hexdec($hex2));
if(
$dechex == 'Ã') {
$pos += 2;
if(
substr($source$pos1) == '%') {
$pos++;
$char2a chr(hexdec(substr($source$pos2)));
$decodedStr .= htmlentities(utf8_decode($dechex $char2a),ENT_QUOTES,'ISO-8859-1');
}
else {
$decodedStr .= htmlentities(utf8_decode($dechex));
}
}
else {
$decodedStr .= $dechex;
}
$pos += 2;
}
else {
$decodedStr .= $charAt;
$pos++;
}
}
return 
$decodedStr;

mas info y creditos del código en los "user coments" de PHP.net funcion urldecode():
http://us.php.net/manual/en/function.urldecode.php

Un saludo,

Última edición por Cluster; 27/12/2002 a las 23:38