Veo que los caracteres %0d%0a se corresponden con nueva linea y retorno de carro, he pensado en incluir otra nueva funcion que filtre de nuevo la cadena incluida en la variable que voy a poner en el href y que elimine todo lo que pueda dar lugar a un retorno de carro, sería algo así:
Código PHP:
function Limpia0d0a ($cadena){
$cadena= strtolower($cadena); //paso de nuevo a minusculas
$cadena= ereg_replace( " ", "", $cadena); //tambien mete un espacio
$cadena= ereg_replace( "%20", "", $cadena); //por si transforma el espacio
$cadena= ereg_replace( "%0d%0a", "", $cadena); //los navegadores interpretan %0d%0a como un retorno de carro
$cadena= ereg_replace( "%0d", "", $cadena);
$cadena= ereg_replace( "%0a", "", $cadena);
$cadena= ereg_replace( "<br/>", "", $cadena);
$cadena= ereg_replace( "<br>", "", $cadena);
$cadena= ereg_replace( "\n", "", $cadena);
$cadena= ereg_replace( "\r", "", $cadena);
$cadena= ereg_replace( "\x0d", "", $cadena);
$cadena= ereg_replace( "\x0a", "", $cadena);
return $cadena;
}
para luego mostrarlo así:
Código PHP:
if ($adjuntos!="") {
$_SESSION["foot"] .= "<br><b>Adjunto:</b> <a href='descarga.php?id=".Limpia0d0a($adjuntos)."' target='_blank'><b>".$adjuntos."</b></a>";
}
¿Tenéis una solución mejor?
Gracias