Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: :ohk<any> en 8 Junio 2015, 19:00 pm



Título: PHP y MySQL Importar datos desde excel a cualquier tabla y columna [TUTORIAL]
Publicado por: :ohk<any> en 8 Junio 2015, 19:00 pm
Tal como lo dice en el título, el código presentado a continuación nos va a permitir ingresar a una base de datos Mysql utilizando PHP desde un archivo creado en excel de extensión .csv (delimitado por comas).

Este código nos va a permitir ingresar la cantidad de datos necesarios a una o multiples tablas y a una o diferentes columnas sin requerir de alteraciones en el código fuente,  de una base de datos sin requerimiento de configuraciones grandes o complicadas.

Para que este ejemplo este completo iniciaremos creando una tabla para nuestra base de datos en Mysql.

Código
  1. CREATE TABLE prueba;
  2.  
  3. CREATE TABLE IF NOT EXISTS `estudiante` (
  4. `id_estudiante` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  5. `nombre` varchar(100) NOT NULL,
  6. `apellidos` varchar(100) NOT NULL,
  7. `telefono` varchar(20) NOT NULL
  8. ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
  9.  

Ahora que tenemos nuestra base de datos creada y nuestra tabla, revisaremos un poco el código de importación y sus dependencias para realizar una importación exitosa.

estructura

(http://www.32blitz.com/wp-content/uploads/2015/06/paso11.png)

Como se puede apreciar, tenemos archivos de hojas de estilo, archivos de javascript y 6 archivos en PHP que realizan la carga. Es de vital importancia realizar una correcta configuración dentro de los archivos db.php y save.php.

(http://www.32blitz.com/wp-content/uploads/2015/06/paso21.png)

Es importante notar que el archivo db.php cuenta con 170 líneas de código de las cuales no tocaremos ninguna otra que las lineas 8, 10 y 12.

En la linea 8 debemos poner el nombre del usuario de nuestra conexión a la base de datos.

En la linea 10 debemos poner el password de acceso a la base de datos relacionado a la cuenta.

Seguir leyendo... (http://www.32blitz.com/php-y-mysql-importar-archivo-de-excel-a-cualquier-tabla-y-cualquier-columna-de-la-base-de-datos/)

Nos saltamos al final del ejemplo:

Con esto finalizamos el ingreso.

Mencionar que podemos realizar el ingreso a diferentes tablas de la base de datos desde el mismo archivo y no importa la dimensión de nuestro archivo en excel.

Aqui tengo un ejemplo con un archivo diferente y con datos diferentes en una base de datos diferente.

(http://www.32blitz.com/wp-content/uploads/2015/06/paso15.png)

Como se puede apreciar, se ingresan a diferentes tablas, diferentes columnas y en desorden y el resultado es el mismo:

(http://www.32blitz.com/wp-content/uploads/2015/06/paso16.png)

Fuente, archivos y ejemplo completo:

Revisar ejemplo completo y Archivos para Descarga (http://www.32blitz.com/php-y-mysql-importar-archivo-de-excel-a-cualquier-tabla-y-cualquier-columna-de-la-base-de-datos/)

Si tienes dudas puedes responder a este tema.

Saludos!

@OHK


Título: Re: PHP y MySQL Importar datos desde excel a cualquier tabla y columna [TUTORIAL]
Publicado por: Regexp en 8 Junio 2015, 23:18 pm
¡Buen aporte!  ;-)

Me ha gustado bastante, de hecho, lo tendré en mente para futuros proyectos. La solución fue bastante sencilla. Creo que estaría muy bien hacer un plugin para Cake o algún otro framework.

Saludos


Título: Re: PHP y MySQL Importar datos desde excel a cualquier tabla y columna [TUTORIAL]
Publicado por: :ohk<any> en 9 Junio 2015, 14:31 pm
No es mala idea incluirlo como plugin para un framework.
Tiene potencial, habria que mejorarlo para que tenga mas y mejores utilidades, y quiza darle un entorno mas amigable.

Saludos