En esta oportunidad siguiendo el post anterior, de manejo de hojas de calculo (xls), queria mostrarles de una forma visual como podemos exportar a excel una consulta de datos.
Ahora les mostrare el codigo que hace posible la exportación
Ahora para que la idea este completa necesitamos tener los datos a exportar, asi que creare una tabla (tbalumnos) con registros. Si usted tiene una tabla con la que quiere trabajar no es necesario que haga este proceso; pero si que tenga la idea de lo que se quiere hacer.
Ahora inserto datos de un script que tengo en SQL.
Y para que las dudas no te maten te muestro los datos con PHPMyAdmin.
Ahora que viste los datos con los que vamos a trabajar. para este ejemplo solo exportaremos las siguientes campos de la tabla CODIGO, APELLIDOS, NOMBRES
Ahora solo tienes que adaptar el codigo a tus necesidades; pero me imagino que estaras impaciente por ver en acción el script. pues solo tienes que ingresar al siguiente URL http://superahacker.webcindario.com/phpexportxls/index.php
Nota:
No es necesario que exista Microsoft Office en el servidor web o del lado del cliente.Ahora les mostrare el codigo que hace posible la exportación
<?php header ("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT"); header ("Cache-Control: no-cache, must-revalidate"); header ("Pragma: no-cache"); header ("Content-type: application/x-msexcel"); header ("Content-Disposition: attachment; filename=demo.xls" ); //aqui va todo lo que quieres exportar //es necesario que consideres manejar una estructura para exportaciones a excel //no mas recomendable es usar tablas </table> ?>
Ahora para que la idea este completa necesitamos tener los datos a exportar, asi que creare una tabla (tbalumnos) con registros. Si usted tiene una tabla con la que quiere trabajar no es necesario que haga este proceso; pero si que tenga la idea de lo que se quiere hacer.
CREATE TABLE `Blog`.`tbalumnos` ( `CODIGO` VARCHAR( 4 ) NOT NULL , `APELLIDOS` VARCHAR( 80 ) NOT NULL , `NOMBRES` VARCHAR( 80 ) NOT NULL , `CORREO` VARCHAR( 80 ) NOT NULL , `CELULAR` VARCHAR( 15 ) NOT NULL , PRIMARY KEY ( `CODIGO` ) );
Ahora inserto datos de un script que tengo en SQL.
Y para que las dudas no te maten te muestro los datos con PHPMyAdmin.
Ahora que viste los datos con los que vamos a trabajar. para este ejemplo solo exportaremos las siguientes campos de la tabla CODIGO, APELLIDOS, NOMBRES
<?php header ("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT"); header ("Cache-Control: no-cache, must-revalidate"); header ("Pragma: no-cache"); header ("Content-type: application/x-msexcel"); header ("Content-Disposition: attachment; filename=alumnos.xls" ); //Conexion MySQL $link=mysql_connect('mysql.webcindario.com:3306','superahacker','password'); mysql_select_db('superahacker',$link); //-Seleccion Database $query='SELECT CODIGO,APELLIDOS,NOMBRES FROM tbalumnos '; // Script SQL $result=mysql_query($query,$link);//-Consulta $field = mysql_num_fields( $result ); //-Número de Columnas // Resultado echo '<table>'; //Mostrando los nombres de Columnas for ( $i = 0; $i < $field; $i++ ) { echo '<td>'.mysql_field_name( $result, $i ).'</td>'; } //Mostrando Registros while($row=mysql_fetch_array($result)){ echo '<tr>'; for ( $i = 0; $i < $field; $i++ ) { echo '<td>'.$row[$i].'</td>'; } echo '</tr>'; } echo '</table>'; //Cerrando la Conexion mysql_close($link); ?>
Ahora solo tienes que adaptar el codigo a tus necesidades; pero me imagino que estaras impaciente por ver en acción el script. pues solo tienes que ingresar al siguiente URL http://superahacker.webcindario.com/phpexportxls/index.php
Que tal, yo tengo el mismo caso, solo que en vez de descargar el archivo, quisiera enviarlo por correo electronico, espero me pudieran ayudar.
ResponderBorrarGracias.
Muchas gracias, me ayudo mucho en lo que tenia que hacer.
ResponderBorrarBendiciones!!
ATT: Betsabe
excelente me ayudo bastante tu aportación y lo adapte a mi código, gracias
ResponderBorrar