
22/10/2012, 10:21
|
| | Fecha de Ingreso: septiembre-2010
Mensajes: 37
Antigüedad: 14 años, 5 meses Puntos: 1 | |
Respuesta: consulta a fichero excel Hola. mira este es el codigo que tengo y consigo ver los datos del usuario buscado. pero los campos que me enseña quiero capturarlos en variables.
campo usuario, campo clave, campo direccion, campo telefono, etc.
codigo:
<?php
// Lanza todos los errores
error_reporting(E_ALL | E_STRICT);
// Tiempo ilimitado para el script
set_time_limit(0);
// Direccion con nombre de Archivo.
$usu="cris";
$file = 'claves.xls';
$extencion = substr(strrchr($file, '.'), 1);
// Tipos de Archivos capaces de Manejar con PHPExcel anteriores a 2007 y posteriores.
$tipoExcel = array('xlsx' => 'Excel2007',
'xls' => 'Excel5');
// Incluyo las librerias que voy a utilizar
require_once 'PHPExcel.php';
require_once 'PHPExcel/IOFactory.php';
// Creo un objeto de Lectura con el tipo de Archivo Correcto Excel20007(xlsx)
// Excel5(xls)
$objReader = PHPExcel_IOFactory::createReader($tipoExcel[$extencion]);
// Configuro que sera solo para leer el archivo
$objReader ->setReadDataOnly(true);
// Cargo el Archivo
$objPHPExcel = $objReader->load($file);
$objWorksheet = $objPHPExcel->getActiveSheet();
$nroColumnas = PHPExcel_Cell::columnIndexFromString($objWorksheet->getHighestColumn());
$nroFilas = $objWorksheet->getHighestRow();
//echo "Su Excel Contiene:<br> $nroColumnas columnas y <br> $nroFilas filas<br>";
// Extraigo los Titulos
$titulos = array();
for ($i=0; $i<= $nroColumnas-1; $i++) {
$titulos[$i] = $objWorksheet->getCellByColumnAndRow($i, 1)->getCalculatedValue();
}
//echo 'Sus Titulos: ' . implode(', ', $titulos);
$datos = array();
$campoId = 'usuario'; // Este deberia ser uno de los campos como titulo columnas
for ($fila = 2; $fila <= $nroFilas; $fila++) {
$dFilas = array();
for ($columna = 0; $columna <= $nroColumnas-1; $columna++) {
$dFilas[$titulos[$columna]] = $objWorksheet->getCellByColumnAndRow($columna, $fila)->getCalculatedValue();
}
$datos[$dFilas[$campoId]] = $dFilas;
}
// Usuario a Buscar
$usuario = $usu;
if (isset($datos[$usuario])) {
echo 'Usuario: <pre>';
echo var_dump($datos[$usuario]);
echo '<pre>';
}else
{
echo "no existe";}
?>
gracias. |