Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/04/2002, 07:30
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Re: Descargar consulta a fichero.

Tambien puedes ver lo que buscas en funcionamiento en phpmyadmin ...

Se trata basicamente de eviar las cabeceras HTML al navegador indicando que el contenido que va a enviarse es:

Código:
// loic1: 'application/octet-stream' is the registered IANA type but
//        MSIE and Opera seems to prefer 'application/octetstream'
$mime_type = (USR_BROWSER_AGENT == 'IE' || USR_BROWSER_AGENT == 'OPERA')
                   ? 'application/octetstream'
                   : 'application/octet-stream';

# Se envian las cabeceras indicando el tipo de fichero que se envia y la extension.
header('Content-Type: ' . $mime_type);
// lem9: we need "inline" instead of "attachment" for IE 5.5
$content_disp = (USR_BROWSER_AGENT == 'IE') ? 'inline' : 'attachment';
header('Content-Disposition:  ' . $content_disp . '; filename="' . $filename . '.' . $ext . '"');
header('Pragma: no-cache');
header('Expires: 0');
Donde:
$filename es el nombre del fichero que quires generar.
$ext es la extension del fichero que quieres generar ... si usas TXT, el navegador mostrara el resultado de tu consulta por pantalla y tu usuario tendra que grabar manualmente esos datos ... mejor usa cualquier otro tipo de extension ... algo asi como lo tipico SQL .. Luego, solo tendran que editarlo con cualquier editro de texto.

A continuacion de enviar las cabeceras HTML tienes que generar tu consulta, en este caso ya que lo vas a enviar a un fichero, tienes que usar como salto de linea /n (para windows, Unix) o /r (para Mac) o si gustas .. los dos /n/r y enviar toda la consulta al fichero con un simple echo (eso si, concatenado en un solo echo)

ejemplo:
Código:
$datos = "Esto es una prueba/n";
$datos. = "Esto es otra linea abajo de la anterior/n";
echo $datos;
Un saludo,

pd: Porciones de codigo extraidos de phpmyadmin.