Foros del Web » Programando para Internet » Javascript »

Descargar archivo o abrirlo en ventana nueva

Estas en el tema de Descargar archivo o abrirlo en ventana nueva en el foro de Javascript en Foros del Web. estimados tengo una aplicacion que me funciona sin problemas, el unico detalle es que no se como hacer que el link se abra en una ...
  #1 (permalink)  
Antiguo 19/05/2009, 22:08
 
Fecha de Ingreso: mayo-2009
Mensajes: 1
Antigüedad: 15 años
Puntos: 0
Descargar archivo o abrirlo en ventana nueva

estimados tengo una aplicacion que me funciona sin problemas, el unico detalle es que no se como hacer que el link se abra en una pagina nueva o que solo descargue el "file"

$href = "";
$href = "/einfo/xls-tmp/".$send;
echo "<script>document.location.href='$href' ;</script>\n";


gracias

alvaro
  #2 (permalink)  
Antiguo 20/05/2009, 00:02
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Respuesta: Descargar archivo o abrirlo en ventana nueva

Hola acampos!! Bienvenido a los foros!!

Este problema se podría resolver (al menos para descargarlo) en php:
En vez de poner el código de javascript:
echo "<script>document.location.href='$href' ;</script>\n";
pon esto:
Código PHP:
Ver original
  1. $manejador=fopen($href,"+r");
  2. $contenido=fread($manejador,filesize($href);
  3. fclose($manejador);
  4. header("Content-type: application/force-download");
  5. header("Content-Disposition: filename=".basename($href));
  6. header("Content-Transfer-Encoding: binary");
  7. echo $contenido;

Claro, que esto te serviría si no has hecho que la página donde se pone esto haya escrito nada en el documento html antes de ejecutarlo.

Para resolver tu problema en Javascript tienes:

echo "<script>window.open('$href') ;</script>\n";

Pero probablemente los bloqueadores de popups te lo bloquearán...
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
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 07:42.