Ver Mensaje Individual
  #13 (permalink)  
Antiguo 21/06/2011, 10:54
ocp001a
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: php Excel reader

Te recomiendo mejor usar phpexcel de codeplex, es mucho más fácil de usar y es capaza de leer hasta excel 2007.

Te pego aquí como leo algunos archivos:

Código PHP:
Ver original
  1. $ext=array_pop(explode(".",$archivo));//obtenemos la extension del archivo
  2. if($ext!="xls" and $ext!="xlsx")//si no es un archivo de excel
  3.     die("Debe enviar un archivo de excel (xls,xlsx)");
  4. else{
  5.     require_once 'lib/phpexcel/PHPExcel/IOFactory.php';
  6.     if($ext=="xlsx")
  7.         $objReader = PHPExcel_IOFactory::createReader('Excel2007');//si es excel 2007 cargamos su lector
  8.     else
  9.         $objReader = new PHPExcel_Reader_Excel5();//si no, cargamos el lector para archivos xls
  10.     $objReader->setReadDataOnly(true);
  11.     $objPHPExcel = $objReader->load("$archivo");
  12.     $objWorksheet = $objPHPExcel->getActiveSheet(0);//indicamos que empezamos con la primer hoja
  13.     $highestRow = $objWorksheet->getHighestRow(); //Leemos cuantas filas tiene e.g. 10
  14.     if(!$highestRow)//si tiene 0 filas
  15.         die("El archivo de excel no contiene informacion o bien esta no es accesible");
  16.         ///comenzamos a leer el archivo
  17.     for ($row = 1; $row <= $highestRow; ++$row){
  18.         $a=$objWorksheet->getCellByColumnAndRow(0, $row)->getValue();
  19.         $b=$objWorksheet->getCellByColumnAndRow(1, $row)->getValue();
  20.         $c=$objWorksheet->getCellByColumnAndRow(2, $row)->getValue();
  21.     //Aqui puedes meter la info del excel a la base de datos
  22.         mysql_query("insert into mi_tabla values ('$a','$b','$c')");
  23.     }
  24. }
Las validaciones las puedes hacer según las necesites.