Hola: tengo que exportar el resultado de una consulta en una base de datos mysql a excel...
Se puede hacer??? y si se pudiera... me indican como???
Gracias
| ||||
Una forma sencilla de acerlo es sacar los datos por medio de la propiedad INTO OUTFILE del comando SELECT usando: , como separador de campos (FIELDS TERMINATED BY) \n como final de linea (LINES TERMINATED BY) ' para encerrar los valores de los campos (OPTIONALLY ENCLOSED BY) y renombrar el archivo como .csv, esto hara que excel lo reconozca y respete el encolumnado. Aqui les va un ejemplo: SELECT nombre, apellido, edad INTO OUTFILE '/tmp/usuarios.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM usuarios; Salutes! PD: tengan en cuenta que MySQL debe tener permisos de escritura sobre la carpeta de destino, en este caso tmp |
| ||||
Hola Aca les entrego un ejemplo para generar archivos Excel de manera sencilla. Obviamente esto es una manera super basica de enviar la data a una planilla, hay clases mucho mas completas para esta tarea, sin embargo, la manera que les voy a dar a continuacion no deja de ser efectiva. Código PHP: Eso seria Saludos
__________________ =PoWeReD By MySeLf!= Última edición por e-miliox; 09/02/2005 a las 16:07 |
| |||
e-miliox, hola sabes que al ejecutar el programa me salio el siguiente error Fatal error: Can't use function return value in write context in c:\AppServ\www\fides\pruebaexcel.php on line 27 podrian ayudarme a ver que hago |
| ||||
el error que cometio mi amigo emilio fue poner while ($list... el $list es sin $ la linea debiese ser de la siguiente manera while(list($strNombreLibro, $strPrecioLibro) = mysql_fetch_row($result)) Saludos....
__________________ Atte Real BHONOX Programador Cervecero! :borracho: Lenguajes vengan a MI!! |
| |||
(En las FAQ's de este foro .. tenían un ejemplo: http://www.forosdelweb.com/f18/faqs-php-530600-post254356/ .. por lo menos se vé la "base", porsupuesto este ejemplo complementa al otro .. ) Un saludo, |
| |||
Emiliox el ejemplo es bueno y me funciona pero tengo una tabla de unas 2500 filas y el excel solo me abre como 945, no se cual puede ser el error o si a alguien le ha sucedido lo mismo me podrian ayudar please........ |
| |||
Gracias por el codigo, pero una pregunta este codigo baja el archivo al servidor o a la máquina local, porque estoy teniendo conflictos de seguridad o depende de la direccion del browser para descargar archivos |
| ||||
Hola! hace muuucho tiempo que no entraba al foro :D nandors1: el archivo te lo envia el servidor (quien esta ejecutando el script php) al navegador (que esta instalado en tu computador). Ahora, claro, es posible que tengas problemas de permisos para guardar el archivo que te envia con los datos, que tal si revisas los permisos que tienes en esa carpeta? sino, lo que puedes hacer es descargar el archivo (al ponerle guardar como) en la carpeta temporal del sistema (/windows/temp/ en windows o /tmp/ en linux, por ejemplo) generalmente estas carpetas no son afectadas por las politicas de seguridad que aplican los admins... bueno esa es solo una idea en todo caso. Suerte con eso, y cuentanos como te va :) Saludos
__________________ =PoWeReD By MySeLf!= |
| |||
e-miliox, acerca de tu codigo: if (mysql_num_rows($result) > 0) { // no regreso filas, informamos y finalizamos echo "sorry pero no se encontraron libros en la base de datos."; } xDDD cuidado con el IF :p saludos, me voy que estoy en el trabajo. adios.
__________________ Roberto Osses Elgueta Senior Web Developer |