Foros del Web » Programando para Internet » PHP »

Resultado Sql a Archivo Excel(COM) guardado en el Cliente

Estas en el tema de Resultado Sql a Archivo Excel(COM) guardado en el Cliente en el foro de PHP en Foros del Web. Buenas Tardes. He buscado por todos lados, para guardar el resultado de un Query a un Archivo de Excel. He encontrado buenas referencias, pero la ...
  #1 (permalink)  
Antiguo 07/08/2003, 15:49
 
Fecha de Ingreso: julio-2003
Mensajes: 2
Antigüedad: 14 años, 4 meses
Puntos: 0
Pregunta Resultado Sql a Archivo Excel(COM) guardado en el Cliente

Buenas Tardes.
He buscado por todos lados, para guardar el resultado de un Query a un Archivo de Excel. He encontrado buenas referencias, pero la mayoría guarda el archivo de Excel en el Servidor y eso no me sirve ya que lo requiero en la máquina del Usuario(Cliente).

No uso los header ya que, efectivamente esto si funciona y guarda el archivo Excel en la máquina Cliente pero no desplega el resultado en la página ya que los header siempre se lanzan primero al desplegarse la página HTML y si meto los header en un boton para que el usuario los lanze por si quiere guardar el resultado en Excel, no me sirve ya que PHP me manda el mensaje de "Warning: Cannot modify header information - headers already sent by ".

Use objetos COM como lo recomeinda este arículo http://www.phpbuilder.com/columns/alain20001003.php3 y me funciona y lo ejecuto pero de igual manera el archivo solo se guarda en la máquina Servidor pero yo necesito que se guarde en la máquina Cliente.

Luego entonces, la pregunta es, ¿Alguién sabe como puedo guardar, cuando el usuario lo elija, un Archivo Excel pero en la máquina Cliente? obviamente después de que el Usuario ve el resultado desplegado en su Navegador.

¡De antemano Gracias!
  #2 (permalink)  
Antiguo 07/08/2003, 16:11
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 15 años, 11 meses
Puntos: 0
He leido todo el texto, y repites una y otra vez la misma pregunta, de todas maneras el archivo en cuestión debe guardarse en el servidor. Una vez que haya realizado eso, tiens que forzarlo a que se descargue.

Dices que has intentado, pero creo que no lo suficiente, para forzar la descarga sin mayor complicación puedes crearte un archivo aparte que solo haga esa operación.

En todo caso, pon el código y vemos que logramos.

Saludos
  #3 (permalink)  
Antiguo 07/08/2003, 16:27
 
Fecha de Ingreso: julio-2003
Mensajes: 2
Antigüedad: 14 años, 4 meses
Puntos: 0
OK.
Me dedico a seguir buscando.
Gracias por tu ayuda.

Por querer ser explicito, repetí demasiado lo que quiero resolver.

¡Saludos!
  #4 (permalink)  
Antiguo 07/08/2003, 16:35
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 15 años, 5 meses
Puntos: 10
pues asi como asi, se me ocurre k no puedes llegar y guardar cosas en la maquina cliente, pues esto seria una practica demaciado insegura para uno como cliente, debido a que podrian llenarnos de virus verdad. Pues como te dijeron, lo que debes hacer es formzar a que el archivo se descargue, y el usuario tendra que seleccionar donde lo guarda y todo. Ahora bien, si lei correctamente, no lo haces con botones pues los header solo puedes mandarlos antes que nada al navegador, pero podrias hacer estos header en archivos aparte, y k al precionar el boton, solo llames a este archivo para k fuerza la descarga, luego mediante simple JavaScript cirras la ventana.

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #5 (permalink)  
Antiguo 07/08/2003, 17:51
 
Fecha de Ingreso: septiembre-2002
Mensajes: 122
Antigüedad: 15 años, 3 meses
Puntos: 0
Yo pienso que lo que debes hacer es generar el archivo excel, visualizar el resultado de la consulta en el explorador y al principio o al final crear un link que diga descargar resultado de la consulta, asi el cliente tine la posibilidad de decidir sobre la descarga y la ubicación de la misma.
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 03:22.