Categoria: Programacion Tema: Base de datos Titulo: Cargar excel a una tabla mysql con php
Fecha del Tema: 2013-08-05 11:29:20Lo primero que debemos hacer es bajarnos la clase PHPExcel. Luego el codigo fuente quedaria asi: <?php require_once `1.7.2/Classes/PHPExcel/IOFactory.php`; //cargamos el archivo excel(extension *.xls) $objPHPExcel = PHPExcel_IOFactory::load(`mi.xls`); // Asignamos la hoja excel activa $objPHPExcel->setActiveSheetIndex(0); $i=2;//Asignamos la fila desde la que empezaremos la lectura //OJO Recorremos las filas del excel hasta que una fila de la columna A este vacia while($objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue() != ``) { $no = $objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue(); $no=trim($no); $descripcion = $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue(); $descripcion=trim($descripcion); $stock_silo = $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue(); $stock_silo=trim($stock_silo); $pend_recibir = $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue(); $pend_recibir=trim($pend_recibir); $precio = $objPHPExcel->getActiveSheet()->getCell("E".$i)->getValue(); $precio=trim($precio); $modelo = $objPHPExcel->getActiveSheet()->getCell("F".$i)->getValue(); $modelo=trim($modelo); $sql = "INSERT INTO Actu_stock (No, Descripcion, Stock_silo, Pend_recibir, Precio, Modelo) VALUES (`$no`, `$descripcion`, `$stock_silo`,`$pend_recibir` ,`$precio` ,`$modelo`)"; $rst=mysql_query($sql,$conexion); //Ejecutamos la SQL if(!$rst) //Comprobamos si hay errores die("Error MySQL de Insercion de Datos"); $i++; } ?>
Lo primero que debemos hacer es bajarnos la clase PHPExcel. Luego el codigo fuente quedaria asi: <?php require_once `1.7.2/Classes/PHPExcel/IOFactory.php`; //cargamos el archivo excel(extension *.xls) $objPHPExcel = PHPExcel_IOFactory::load(`mi.xls`); // Asignamos la hoja excel activa $objPHPExcel->setActiveSheetIndex(0); $i=2;//Asignamos la fila desde la que empezaremos la lectura //OJO Recorremos las filas del excel hasta que una fila de la columna A este vacia while($objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue() != ``) { $no = $objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue(); $no=trim($no); $descripcion = $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue(); $descripcion=trim($descripcion); $stock_silo = $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue(); $stock_silo=trim($stock_silo); $pend_recibir = $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue(); $pend_recibir=trim($pend_recibir); $precio = $objPHPExcel->getActiveSheet()->getCell("E".$i)->getValue(); $precio=trim($precio); $modelo = $objPHPExcel->getActiveSheet()->getCell("F".$i)->getValue(); $modelo=trim($modelo); $sql = "INSERT INTO Actu_stock (No, Descripcion, Stock_silo, Pend_recibir, Precio, Modelo) VALUES (`$no`, `$descripcion`, `$stock_silo`,`$pend_recibir` ,`$precio` ,`$modelo`)"; $rst=mysql_query($sql,$conexion); //Ejecutamos la SQL if(!$rst) //Comprobamos si hay errores die("Error MySQL de Insercion de Datos"); $i++; } ?>