Ver Mensaje Individual
  #3 (permalink)  
Antiguo 20/05/2013, 16:18
Guanako
 
Fecha de Ingreso: enero-2008
Mensajes: 6
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: mostrar datos de excel en un grid view en php

ahorita lo que tengo es esto , con este codigo .php vuelvo el contenido de un archivo excel en el navegador para presentarlo

---------------------------------------------------------
<div id="show_excel">
<?php

if($_FILES['file']['name'] != '')
{

require_once 'reader/Classes/PHPExcel/IOFactory.php';

//Funciones extras

function get_cell($cell, $objPHPExcel){
//select one cell
$objCell = ($objPHPExcel->getActiveSheet()->getCell($cell));
//get cell value
return $objCell->getvalue();
}

function pp(&$var){
$var = chr(ord($var)+1);
return true;
}

$name = $_FILES['file']['name'];
$tname = $_FILES['file']['tmp_name'];
$type = $_FILES['file']['type'];

if($type == 'application/vnd.ms-excel')
{
// Extension excel 97
$ext = 'xls';
}
else if($type == 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')
{
// Extension excel 2007 y 2010
$ext = 'xlsx';
}else{
// Extension no valida
echo -1;
exit();
}

$xlsx = 'Excel2007';
$xls = 'Excel5';

//creando el lector
$objReader = PHPExcel_IOFactory::createReader($$ext);

//cargamos el archivo
$objPHPExcel = $objReader->load($tname);

$dim = $objPHPExcel->getActiveSheet()->calculateWorksheetDimension();

// list coloca en array $start y $end
list($start, $end) = explode(':', $dim);

if(!preg_match('#([A-Z]+)([0-9]+)#', $start, $rslt)){
return false;
}
list($start, $start_h, $start_v) = $rslt;
if(!preg_match('#([A-Z]+)([0-9]+)#', $end, $rslt)){
return false;
}
list($end, $end_h, $end_v) = $rslt;

//empieza lectura vertical
$table = "<table border='1'>";
for($v=$start_v; $v<=$end_v; $v++){
//empieza lectura horizontal
$table .= "<tr>";
for($h=$start_h; ord($h)<=ord($end_h); pp($h)){
$cellValue = get_cell($h.$v, $objPHPExcel);
$table .= "<td>";
if($cellValue !== null){
$table .= $cellValue;
}
$table .= "</td>";
}
$table .= "</tr>";
}
$table .= "</table>";

echo $table;
}
?>
</div>
---------------------------------------------------------------