Foros del Web » Programando para Internet » ASP Clásico »

Forzar cuadro abrir/guardar

Estas en el tema de Forzar cuadro abrir/guardar en el foro de ASP Clásico en Foros del Web. Buenos días, ¿como puedo forzar a que salga el cuadro de Abrir/Guardar archivo en un redirect sobre un archivo que he realizado en el servidor? ...
  #1 (permalink)  
Antiguo 03/02/2005, 05:24
j@n
 
Fecha de Ingreso: febrero-2004
Mensajes: 178
Antigüedad: 21 años, 2 meses
Puntos: 0
Pregunta Forzar cuadro abrir/guardar

Buenos días,
¿como puedo forzar a que salga el cuadro de Abrir/Guardar archivo en un redirect sobre un archivo que he realizado en el servidor?

Se abre directamente... y necesito que antes salga SIEMPRE la pregunta (Abrir/Guardar)

¿Me entienden?

Graciaas
espero su respuesta
j@n
  #2 (permalink)  
Antiguo 03/02/2005, 06:37
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 22 años, 8 meses
Puntos: 16
Response.ContentType = "application/octet-stream"
Response.AddHeader "Content-Disposition", "attachment;filename=nombre archivo"


como el octet stream noes reconocido, el browser no sabra con que abrirlo, forzando inevitablemente la bajada al disco duro


  #3 (permalink)  
Antiguo 03/02/2005, 06:43
j@n
 
Fecha de Ingreso: febrero-2004
Mensajes: 178
Antigüedad: 21 años, 2 meses
Puntos: 0
no me funciona...

después de
Response.ContentType = "application/octet-stream"
Response.AddHeader "Content-Disposition", "attachment;filename="&nomFich

abro el archivo con: (la ruta completa) ¿¿¿???
response.redirect nomFich

o como ??

Gracias por tu tiempo

j@n
  #4 (permalink)  
Antiguo 04/02/2005, 04:01
j@n
 
Fecha de Ingreso: febrero-2004
Mensajes: 178
Antigüedad: 21 años, 2 meses
Puntos: 0
Exclamación ok. pero se queda la página blanca abierta

Finalmente voy a generar un TXT con:
Response.ContentType = "application/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename="nombre"

y el fichero lo 'pinto' con RESPONSE.WRITE directamente.

Entonces sale la ventana de ABRIR o GUARDAR:
ABRIR: ok: Se abre notepad
GUARDAR : ok PERO: Se queda la ventana abierta..... como podría solucionar eso?

O cerrarla... o poder 'escribir' un HTML; pero no lo consigo al tener las etiquetas anteriores se añadre al txt


Espero su ayuda
gracias
  #5 (permalink)  
Antiguo 04/02/2005, 04:54
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 22 años, 8 meses
Puntos: 16
bueno.lo que debes hacer es basicamente abrir esta pantalla en un iframe que este usando un css con atributos de invisibilidad.

algo asi

<iframe style="visibility :'hidden';width=0;height=0;" name="nombre_del_frame"></iframe>

y seguido a eso un script que diga asi

<script language="javascript">
window.open ( 'lapagina.aspque genera el archivo','nombre_del_frame');
</script>


y listo.
  #6 (permalink)  
Antiguo 04/02/2005, 05:59
j@n
 
Fecha de Ingreso: febrero-2004
Mensajes: 178
Antigüedad: 21 años, 2 meses
Puntos: 0
?? No entiendo

Creo que entendí mal...

¿Tengo que hacer una nueva página?:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Descarga a fichero</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<iframe style="visibility :'hidden';width=0;height=0;" name="nombre_del_frame"></iframe>
<script language="javascript">
window.open ('Pagina.asp','nombre_del_frame');
</script>
</body>
</html>

¿es eso?

Me dá este error:
<font face="Arial" size=2>
<p>Response object</font> <font face="Arial" size=2>error 'ASP 0156 : 80004005'</font>
<p>
<font face="Arial" size=2>Header Error</font>
<p>
<font face="Arial" size=2>Pagina.asp</font><font face="Arial" size=2>, line 82</font>
<p>
<font face="Arial" size=2>The HTTP headers are already written to the client browser. Any HTTP header modifications must be made before writing page content.
</font>

La pagina.asp es una ASP con las etiquetas para poder escribir directamente un TXT....

alguna pista??
Gracias por tu ayuda
  #7 (permalink)  
Antiguo 04/02/2005, 06:08
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 22 años, 8 meses
Puntos: 16
aer comparito.

la cosa es asi

supongogamos:

pagina A = contiene la interfaz de la aplicacion, "haga click aqui para bajar archivo" cuyo boton hace referencia a pagina B

pagina B = contiene el iframe y la funcion java script. y algun mensaje X.
la funcion java script deberia hacer referencia a la pagina C


pagina C = contiene el codigo add header octe strem etc etc.

entonces:

en A yo hago click y me envia a B, B por suparte ejecuta el script dentro del iframe , el cual ejecuta C. y C por suparte, baja el archivo.

o algo por el estilo.

espero te ayude
  #8 (permalink)  
Antiguo 04/02/2005, 06:33
j@n
 
Fecha de Ingreso: febrero-2004
Mensajes: 178
Antigüedad: 21 años, 2 meses
Puntos: 0
casi... pero no

vale... entendido: Ya tengo la página que quedaba en blanco con un texto y un botón cerrar.... pero al escribir la página.ASP me dá error:

<font face="Arial" size=2>
<p>Response object</font> <font face="Arial" size=2>error 'ASP 0156 : 80004005'</font>
<p>
<font face="Arial" size=2>Header Error</font>
<p>
<font face="Arial" size=2>/admon/cactividad/cActivDesc.asp</font><font face="Arial" size=2>, line 82</font>
<p>
<font face="Arial" size=2>The HTTP headers are already written to the client browser. Any HTTP header modifications must be made before writing page content.
</font>


sabes que puede faltarme??
nuevamente gracias

  #9 (permalink)  
Antiguo 04/02/2005, 06:39
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 22 años, 8 meses
Puntos: 16
tal cual como dice el error, los headers http o encabezados de http deben ser colocados antes que cualquier cosa que escriba algo en la pantalla.
ya que estos son encabezados.

comprendes?

tonces deberias solo correro los headers al comienzo de la pagina y ya
  #10 (permalink)  
Antiguo 04/02/2005, 06:40
j@n
 
Fecha de Ingreso: febrero-2004
Mensajes: 178
Antigüedad: 21 años, 2 meses
Puntos: 0
De acuerdo bueno... creo que está ok

se trata de un error en la programación... ya que quiero hacer un response.redirect en la página en la que genero el TXT... y como se dice ahora "Va a ser que no!!"

Así que... me buscaré alguna otra historia.
Muchas gracias por tu tiempo Muzztein.
  #11 (permalink)  
Antiguo 04/02/2005, 07:14
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 22 años, 8 meses
Puntos: 16
okis.... en ese caso checa en la biblioteca una funcion llamada "redireccionar" que sirve para hacer redirecciones despues de haber mandando algun mensaje.

pero al final?
te funciono el asunto?=
  #12 (permalink)  
Antiguo 04/02/2005, 08:39
j@n
 
Fecha de Ingreso: febrero-2004
Mensajes: 178
Antigüedad: 21 años, 2 meses
Puntos: 0
Si. Ahora ya funciona todo correctamente.
Repito: Muchas gracias por tu tiempo.

j@n
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 17:21.