lunes, 21 de diciembre de 2009

Exportar BD Mysql a Excel con PHP

hola espero a alguien le ayude este ejemplo como exportar datos de mysql a excel primero hay que crear una tabla en html comun y corriente con una variable shtml. y despues el codigo entre comillas y despues vreal ya sea un ciclo for o un foreach para ingresar los datos enla tabla creada
ejemplo:
$shtml .= "<table width='718' cellpadding='1'
cellspacing='1'>";
$shtml .= "<tr>";
$shtml .= "<td
colspan=10 height='80'align='center'>";
$shtml .= "<font
size='11'><br>Instituto Nacional de Migracion Delegaci&oacute;n
Jalisco</br>"; // aca pone el titulo
$shtml .= "</td>";

$shtml .= "</tr>";
$stylo_1="width='100' height='18'
style='padding: 2' align='left'";
$stylo_2="width='100' bgcolor='#E1E1E1'
style='padding: 2' height='25' align='left'";
$shtml .= "<tr $stylo_1
font size='2' face='Arial' >";
$shtml .= "<td
bgcolor='#C0C0C0'><b>Nombre</b></div></td>";

$shtml .= "<td
bgcolor='#C0C0C0'><b>Nacionalidad</b></td>";
$shtml .=
"<td bgcolor='#C0C0C0'><b>Expediente Migratorio/b></td>";

$shtml .= "<td bgcolor='#C0C0C0'><b>Fecha
Internacion</b></td>";
$shtml .= "<td
bgcolor='#C0C0C0'><b>Lugar de Internacion</b></td>";

$shtml .= "<td bgcolor='#C0C0C0'><b>Sexo</b></td>";

$shtml .= "<td bgcolor='#C0C0C0'><b>Estado
Civil</b></td>";
$shtml .= "<td
bgcolor='#C0C0C0'><b>Fecha</b></td>";
$shtml .= "<td
bgcolor='#C0C0C0'><b>Lugar de Nacimiento</b></td>";

$shtml .= "<td bgcolor='#C0C0C0'><b>N&deg; de
forma</b></td>";
$shtml .= "<td
bgcolor='#C0C0C0'><b>Tipo de forma</b></td>";
$shtml .=
"</tr>";
esa es la tabla despues generamos el foreach del mismo tamaño que la tabla creada anteriormente.

foreach($Data->persona AS
$persona)
{
$shtml .= "<tr $stylo_2 font size='2' face='Arial'>";

$shtml .= "<td >{$persona[$nombre]}</td>";
$shtml .= "<td
>{$persona['nacionalidad']}</td>";
$shtml .= "<td
>{$persona['expediente_migratorio']}</td>";
$shtml .= "<td
>{$persona['fecha_internacion']}</td>";
$shtml .= "</td>";

$shtml .= "<td >{$persona['lugar_internacion']}</td>";

$shtml .= "<td >{$persona['sexo']}</td>";
$shtml .= "<td
>{$persona['edo_civil']}</td>";
$shtml .= "<td
>{$persona['fecha']}</td>";
$shtml .= "<td
>{$persona['lugar_nacimiento']}</td>";
$shtml .= "<td
>{$persona['numero_forma']}</td>";
$shtml .= "<td
>{$persona['tipo']}</td>";
$shtml .= "</tr>";
}
despues creamos el archivo donde guardaremos la tabla es el siguiente

$scarpeta=TO_ROOT .'/reportes/';
// echo $scarpeta;
//debe tener
permisos 775 por lo menos
$hoy=date('d-m-Y');
$hora=date('H-i-s');

$archivo=$tarea."_".$hoy."_".$hora;

$sfile=$scarpeta."".strftime($archivo).".xls"; //ruta del archivo a generara

$fp=fopen($sfile,"w");
fwrite($fp,$shtml);
fclose($fp);

echo
"<p align='center'>Nombre y Ruta Del archivo.</p>";
?>
<p align='center'><a href="<?php echo TO_ROOT
."/reportes/".$archivo.".xls"; ?>">Abrir el archivo </a></p>
<?php

el TO_ROOT indica la ruta del archivo y listo tambien le decimos donde queremos guardarlo en que carpeta
eso es todo gracias espero que les sirva atte Jorge

No hay comentarios:

Publicar un comentario