Crear hojas de cálculo Excel con PHP
10 COMENTARIOS - Publicado hace 12 meses - Clasificado en: PHP, TUTORIALES, CLASES, EXCELExisten varias formas de exportar a Excel mediante PHP. En este post vamos a servirnos de la clase Excel Writer. La clase es muy sencilla de utilizar y nos puede permitir realizar el proceso de exportación de una tabla de nuestra base de datos sin grandes complicaciones. Primero veamos un ejemplo básico muy ilustrativo del funcionamiento de la clase.
<php
include("excelwriter.inc.php");
$excel=new ExcelWriter("FicheroExcel.xls");
if($excel==false) {
echo $excel->error;
}
// PRIMERA FORMA DE ESCRITURA DE FILAS
$myArr=array("CeldaA1","CeldaB1","CeldaC1","CeldaD1");
$excel->writeLine($myArr);
$myArr=array("CeldaA2","CeldaB2","CeldaC2","CeldaD2");
$excel->writeLine($myArr);
//SEGUNDA FORMA DE ESCRITURA DE FILAS
$excel->writeRow();
$excel->writeCol("CeldaA3");
$excel->writeCol("CeldaB3");
$excel->writeCol("CeldaC3");
$excel->writeCol("CeldaD3");
$excel->writeRow();
$excel->writeCol("CeldaA4");
$excel->writeCol("CeldaB4");
$excel->writeCol("CeldaC4");
$excel->writeCol("CeldaD4");
$excel->close();
echo "Los datos se han grabado con éxito.";
?>
Descargar ejemplo completo » »
Supongamos ahora que tenemos una tabla con una serie de comercios y deseamos poder exportarla, para uso propio o porque el cliente nos lo ha pedido, a una hoja de cálculo Excel. Un ejemplo de utilización de la clase Excel Writer para exportar datos de una tabla de una base de datos MySQL sería:
<?php
include("includes/excelwriter.inc.php");
$excel=new ExcelWriter("galeria_comercial.xls");
if($excel==false) {
echo $excel->error;
}
//Escribimos la primera fila con las cabeceras
$myArr=array("Nombre Comercial","Direccion","CP","Localidad","Telefono","Email");
$excel->writeLine($myArr);
//REALIZAMOS LA CONSULTA
$dbhost = "localhost";
$dbuser = "usuario";
$dbpassword = "password";
$dbname = "base_de_datos";
$db2 = mysql_connect($dbhost, $dbuser, $dbpassword) or die("Connection Error: " . mysql_error());
mysql_select_db($dbname) or die("Error al conectar a la base de datos.");
$sql2 = "SELECT * FROM ComerciosGaleria";
$sql2 .= " ORDER BY NombreComercial ASC ";
$result2 = mysql_query( $sql2) or die("No se puede ejecutar la consulta: ".mysql_error());
//Escribimos todos los registros de la base de datos
//en el fichero EXCEL
while($Rs2 = mysql_fetch_array($result2)) {
$myArr=array(
$Rs2['Nombre_Comercial'],
$Rs2['Direccion'],
$Rs2['CodigoPostal'],
$Rs2['Localidad'],
$Rs2['Telefono'],
$Rs2['Email']
);
$excel->writeLine($myArr);
//Otra forma es
//$excel->writeLine($Rs2);
//De este modo volcariamos todos los registros seleccionados
//Sin necesidad de colocarlos/filtrar previamente en $myArr
}
$excel->close();
//Abrimos el fichero excel que acabamos de crear
header("location:galeria_comercial.xls");
?>
Algunas entradas relacionadas:
- Alternar colores en las filas de una tabla con PHP
- Mostrar el número de usuarios online con PHP
- Forzar la descarga de un fichero con PHP
- Conseguir la IP real con PHP
- Mostrar tablas y campos de una base de datos MySQL con PHP
- Exportar tablas HTML a Excel con PHP y JQuery
- Easy Google Maps: clase PHP para facilitar el uso de la API de Google Maps
También te puede interesar:
| Los 11 síntomas de adicción a Internet | Crear una lengua similar a la de los Rolling Stones en Illustrator | Cómo crear un diseño minimalista y moderno de portafolio con Photoshop | Task Coach Portable | Simple Javascript Accordions |
COMENTARIOS
|
|
Publicado hace 12 meses Jota - Me vendrá de lujo, sin duda alguna, para uno de mis próximos proyectos. Gracias! |
|
|
Publicado hace 11 meses Carlos - www.e-sqquizoide.com Muy buenas! he provado este script y si que genera el documento .xls pero al abrirlo da un error en las cabeceras y solo se ve una celda con todo el codigo xml del constructor de la clase excelwriter... sabéis como solucionarlo? muchas gracias de antemano! |
|
|
Publicado hace 10 meses felix charry - No me funciono, lo hice tal cual, lo unico que cambie fueron los valores de la Base de datos, los de la consulta y el array |
|
|
Publicado hace 7 meses aldo - excelente, me funciono de maravilla |
|
|
Publicado hace 6 meses sergio - El codigo no funciona genera el archivo de excel pero cuando llamas al header con el location da error en las cabeceras |
|
|
Publicado hace 6 meses Rafael Usuga - http://youtu.260mb.com Muchas gracias. este script esta super, hace medio año esta buscando este tipo de procedimiento de nuevo muchas graciaaaasss. |
|
|
Publicado hace 5 meses felipe fernandez - Las celdas numéricas las genera como texto. ¿Como se cambia esto? |
|
|
Publicado hace 2 meses egm - ¿Cómo se podrÃan insertar imágenes....? |
|
|
Publicado hace 1 mes juankcres - Como le puedes dar formatos a las celdas???????? |
|
|
Publicado hace 1 mes Morfino - Hola, he aparecido de rebote en esta web, y he probado el código del ejemplo, a mi no me genera ningún excel, solo me muestra el texto de que: Los datos se han grabado con éxito. saludos y gracias |





















diseño web valencia en 500 iconos gratuitos para tus aplicaciones web




