Exportar datos de MySQL a Excel en PHP

Exportar datos de MySQL a Excel en PHP

A veces, es posible que deba exportar al formato de Excel de MySQL para usar localmente. La base de datos o tablas de la base de datos MySQL se puede exportar a varios formatos de archivo, como CSV, XML, SQL, Excel, etc., Al usar el cliente PHP, PhpMyAdmin. También es posible exportar datos de MySQL utilizando el script PHP en lugar de exportar los datos manualmente. Cuando una aplicación web requiere que los datos se almacenen en formato Excel de la base de datos MySQL, entonces es mejor usar el script PHP para realizar esta tarea. Este tutorial le muestra cómo exportar los datos de MySQL utilizando el script PHP.

Requisitos previos

Complete las siguientes tareas antes de exportar cualquier datos MySQL. Debe abrir el cliente MySQL en el terminal o el cliente phpmyadmin en el navegador para realizar las siguientes tareas. Se creará una tabla con cinco registros en una base de datos después de ejecutar los siguientes comandos SQL.

A. Crea una base de datos MySQL

Ejecute el siguiente comando SQL para crear una base de datos llamada la compañía.

Crear la base de datos 'Compañía';

B. Crear una mesa

Ejecute el siguiente comando SQL para crear una tabla con nombre de elementos.

Crear 'elementos' de la tabla (
'ID' int (11) Clave primaria Auto_incement,
'Nombre' Varchar (100) no nulo,
'tipo' varchar (20) no nulo,
'Brand' Varchar (50) no nulo,
'Price' Double (5,2) no nulo
) Motor = innodb;

C. Insertar datos en la tabla

Insertar en 'elementos' ('nombre', 'tipo', 'marca', 'precio') Valores
('Samsung A40S', 'Mobile', 'Sansung', 300.00),
('Samsung 4523 40 "Inche', 'TV', 'Samsung', 250.00),
('Walton Gran Fridge', 'Fridge', 'Walton', 400.00),
('LG 15 ”Monitor', 'Monitor', 'LG', 100.00),
('Dell Gaming Laptop', 'laptop', 'Dell', 450.00);

Si abre la tabla de elementos desde el cliente phpmyadmin, el contenido de la tabla de elementos se verá como la siguiente imagen.

Exportar datos de MySQL al archivo de Excel

Aquí, debe crear un archivo php llamado read_and_export.PHP para crear el siguiente script, que lee registros en la tabla de elementos y crea un archivo de Excel con el contenido de la tabla de elementos. En el script, se declara un objeto de conexión de base de datos para recuperar datos de la tabla de la base de datos. A continuación, se define una consulta de selección para leer todos los registros de la tabla de elementos que se almacenan en una variable llamada $ elementos. Esta variable se utiliza para mostrar el contenido de la tabla en forma tabular y crear un archivo de Excel con contenido de la tabla basado en la acción del usuario. Cuando el usuario hace clic en un botón que luego será creado por el documento HTML para exportar los datos de la tabla en formato Excel, la función ISSET () de este script devolverá "Verdadero."Para crear el archivo de Excel, se define un nombre de archivo con la extensión XSL. La información del encabezado requerida se pasa utilizando la función encabezada (). A continuación, la variable de encabezado $ se usa para establecer el encabezado de las columnas en el archivo de Excel. Los valores clave de la variable $ elementos se utilizan como valores de encabezado. A continuación, la función Implode () se usa para escribir los registros de la tabla de elementos en el archivo de Excel.

Read_and_export.php

consulta ($ consulta);
$ elementos = array ();
// almacenar registros de la mesa en una matriz
while ($ row = $ result-> fetch_assoc ())
$ Artículos [] = $ Row;

// verificar el botón de exportación se presiona o no
if (isset ($ _ post ["export"]))
// Defina el nombre de archivo con la fecha actual
$ filename = "itemData-".Fecha ('D-M-Y').".xls ";
// Establecer información del encabezado para exportar datos en formato de Excel
Encabezado ('Tipo de contenido: Aplicación/VND.MS-Excel ');
Encabezado ('Contenido-Disposición: Adjunto; FileName ='.$ nombre de archivo);
// Establecer variable en falso para encabezar
$ encabezado = falso;
// Agregue los datos de la tabla MySQL al archivo de Excel
si(!vacía ($ elementos))
foreach ($ elementos como $ item)
si(!$ encabezado)
echo implosion ("\ t", array_keys ($ item)) . "\norte";
$ encabezado = verdadero;

Echo Implode ("\ t", array_values ​​($ item)) . "\norte";


salida();

?>

Crear otro archivo php llamado índice.PHP Con el siguiente código para mostrar los registros en la tabla de elementos en el navegador con el botón, exporte a Excel. Aquí, el read_and_export.El archivo PHP se incluye al comienzo del script para hacer la conexión de la base de datos, leer los datos de la tabla y crear un archivo de Excel con los datos de la tabla cuando el usuario presiona el botón. Los datos de la tabla se mostrarán en formato tabular utilizando bootstrap y jQuery.

índice.php

// Agregar script para leer datos mysql y exportar a Excel
incluir ("Read_and_export.php ");
?>



Exportar datos de MySQL a Excel usando PHP

href = "https: // stackpath.bootstrapcdn.com/bootstrap/4.3.1/CSS/Bootstrap.mínimo.CSS ">
href = "https: // maxcdn.bootstrapcdn.com/bootstrap/3.3.7/CSS/Bootstrap-Theme.mínimo.CSS ">
src = "https: // ajax.Googleapis.com/ajax/libs/jQuery/3.5.1/jQuery.mínimo.JS ">
src = "https: // stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.mínimo.JS ">





style = "Color: Green"> Información de la tabla de elementos