Publicado en PHP 2018-04-10 17:20:28
Exportar desde PHP a Excel
Resumen: Sencilla forma de exportar una lista de usuarios desde php y mysql a excel, con link de descarga.
Alguna aplicaciones web necesitan de reportes visuales y reportes hacia documentos legibles que pueden ser en PDF, EXCEL, Etc... en esta ocación veremos la forma más sencilla de exportar un listado de usuarios a formato excel creandose un documento para su descarga.
Veamos el código MYSQL
CREATE TABLE `usuario` (
`id` int(11) NOT NULL,
`nombre` varchar(50) NOT NULL,
`dni` varchar(8) NOT NULL,
`telefono` varchar(9) NOT NULL,
`email` varchar(50) NOT NULL,
`direccion` varchar(100) NOT NULL,
`sector` varchar(10) NOT NULL,
`nrocartilla` varchar(20) NOT NULL,
`urlfoto` varchar(100) DEFAULT NULL,
`urlqr` varchar(50) DEFAULT NULL,
`updated_at` date NOT NULL,
`created_at` date NOT NULL,
`estado` tinyint(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `usuario` (`id`, `nombre`, `dni`, `telefono`, `email`, `direccion`, `sector`, `nrocartilla`, `urlfoto`, `urlqr`, `updated_at`, `created_at`, `estado`) VALUES
(98, 'Gonzalo Higuain', '09234902', '120949210', 'sadministracion@vitatours.com.pe', 'Av. Los determinantes #212', 'X', 'C2018U98', 'pretty-2111498_960_720.jpg', 'qr_98.png', '2018-04-06', '2018-04-06', 0),
ALTER TABLE `usuario`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `dni` (`dni`),
ADD UNIQUE KEY `email` (`email`);
ALTER TABLE `usuario`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=133;
COMMIT;
.
Para la conexión usaremos una clase que nos esta ayudando en gran parte de nuestros proyectos.
Lo llamaremos excel.php, quién creará el doc. excel para su descarga
<?php
date_default_timezone_set('America/Lima');
$fecha = date("d-m-Y H:i:s");
require_once("class.mysql.php");
$user=new Usuario();
$salida ="";
$salida .= "<table><thead><th>NOMBRE</th><th>DNI</th><th>Email</th><th>Telefono</th><th>Area</th><th>Cargo</th></thead><tbody>";
$u=$user->search("usuario","updated_at='".$fecha."'");
while($r=$u->fetchObject()){
$salida .= "<tr><td>".$r->id."</td>
<td>".$r->nombre."</td>
<td>".$r->dni."</td>
<td>".$r->email."</td>
<td>".$r->telefono."</td>
<td>".$r->direccion."</td>
<td>".$r->sector."</td></tr>";
}
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=usuarios_$fecha.xls");
header("Pragma: no-cache");
header("Expires: 0");
echo $salida;
?>
.
Este archivo es típico html al cual se le agrega en el body la siguiente línea.
<a href="excel.php" class="btn btn-danger">EXPORTAR EXCEL</a>
Y listo nos exportar la lista de la tabla usuario a excel. descargando un documento.
Redacción: J.Luis | Artículo leído: 51 veces | Publicación: 2018-04-10 17:20:28
Compártelo con tus amigos
http://apptivaweb.com/php/como-exportar-registros-de-una-tabla-a-excel-con-php