Foros del Web » Programando para Internet » PHP »

Creación de un archivo xls y descarga

Estas en el tema de Creación de un archivo xls y descarga en el foro de PHP en Foros del Web. BUenas tardes, tengo unas pregunta, acabo de terminar una Web donde manejo varias tablas, mi cliente desea tener varios listado de las tablas por ejemplo ...
  #1 (permalink)  
Antiguo 01/12/2004, 15:08
 
Fecha de Ingreso: marzo-2003
Ubicación: Bogotá
Mensajes: 199
Antigüedad: 21 años, 1 mes
Puntos: 0
Creación de un archivo xls y descarga

BUenas tardes, tengo unas pregunta, acabo de terminar una Web donde manejo varias tablas, mi cliente desea tener varios listado de las tablas por ejemplo hay una tabla de autos, entonces desea sacar el listado de los autos mayores de 1999, listo esa consulta facil, pero como hago para que cuando yo le diga listado de autos mayores a 1999 comience a descargar?? como lo hace por ejemplo PhpMyAdmin cuando uno le da exportar?

Gracias.
  #2 (permalink)  
Antiguo 01/12/2004, 17:34
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
$data sería la variable que contiene los datos
Código PHP:
$data="$header\n$data";
header("Content-length: ".strlen($data)."\n"); 
header("Content-Type: application/force-download\n"); 
header("Content-Disposition: attachment; filename=consulta.xls"); 
print 
$data
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #3 (permalink)  
Antiguo 02/12/2004, 14:01
 
Fecha de Ingreso: marzo-2003
Ubicación: Bogotá
Mensajes: 199
Antigüedad: 21 años, 1 mes
Puntos: 0
No me funciono

coloque esto en un archivo llamado prueba1.php :

<?
$data = "HOLAAAAAAA";
$data="$header\n$data";
header("Content-length: ".strlen($data)."\n");
header("Content-Type: application/force-download\n");
header("Content-Disposition: attachment; filename=consulta.xls");
print $data;
?>

Y me sale lo siguiente :

Notice: Undefined variable: header in C:\BKCESAR\sitios web\donsson\prueba1.php on line 3

Warning: Cannot modify header information - headers already sent by (output started at C:\BKCESAR\sitios web\donsson\prueba1.php:3) in C:\BKCESAR\sitios web\donsson\prueba1.php on line 4

Warning: Cannot modify header information - headers already sent by (output started at C:\BKCESAR\sitios web\donsson\prueba1.php:3) in C:\BKCESAR\sitios web\donsson\prueba1.php on line 5

Warning: Cannot modify header information - headers already sent by (output started at C:\BKCESAR\sitios web\donsson\prueba1.php:3) in C:\BKCESAR\sitios web\donsson\prueba1.php on line 6
HOLAAAAAAA

Qué estara mal?

Gracias por la ayuda
  #4 (permalink)  
Antiguo 02/12/2004, 14:25
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Te está diciendo que la variable $header .. no la tienes definida (ni con valor) ..

Ese "aviso" te proboca el resto de errores con la función header() pues no puede exister nada de "salida" antes al cliente .. lease salida como: un espacio antes del <? .. o un salto de línea .. o un echo "algo" .. o HTML directo .. o eso mismo, un mensaje de error que muestre PHP.

Puedes ajustar los niveles de errores de PHP a un nivel más básico (que no informe de los "notice" como esos) con la función y configuración:

error_reporting()
www.php.net/error_reporting

Un saludo,
  #5 (permalink)  
Antiguo 02/12/2004, 14:54
 
Fecha de Ingreso: marzo-2003
Ubicación: Bogotá
Mensajes: 199
Antigüedad: 21 años, 1 mes
Puntos: 0
variable $header

que pena la ignorancia, pero nunca he trabajado con header. No entiendo esta linea : "Te está diciendo que la variable $header .. no la tienes definida (ni con valor) .."
Como puedo definir esa variable header???

Gracias por la ayuda.
  #6 (permalink)  
Antiguo 03/12/2004, 02:40
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
La culpa es mía cesar24, lo copié rapidamente de una aplicación mía en la que yo utilizo la variable $header y se me olvidó quitarla. Deja tu código así:

$data = "HOLAAAAAAA";
header("Content-length: ".strlen($data)."\n");
header("Content-Type: application/force-download\n");
header("Content-Disposition: attachment; filename=consulta.xls");
print $data;
__________________
¿Te apasiona el mundo del guión? El portal del guió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 13:36.