Ver Mensaje Individual
  #10 (permalink)  
Antiguo 11/03/2014, 14:18
Avatar de enlinea777
enlinea777
 
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 16 años
Puntos: 127
Respuesta: Optimizar consulta phpexcel para importar archivo

Cita:
Iniciado por JorgeQuirino Ver Mensaje
Código PHP:
Ver original
  1. $f=1000; //para insertmultiple
  2.  
  3.  
  4.  
  5. $f+=1000;
  6. }

me puedes explicar esas 2 lineas. Saludos Gracias!!!

$f=1000;
es la base Para comparar con $i, cuando $i sea igual a $f se ingresan 1000 registros y pasa por
$f+=1000;
es igual que $f=$f+1000;osea 2000


me falto limpiar el valor $valores despues de cada insert aqui el codigo:
Código PHP:
<?PHP

// AGREGO UNA FUNCION PUES YA SON MAS DE 2 VECES QUE SE REPITE EL CODIGO
function insert($valores){
    
mysql_query("insert into listcon values ".$valores);
}

$f=1000//para insertmultiple
while($param==0//mientras el parametro siga en 0 (iniciado antes) que quiere decir que no ha encontrado un NULL entonces siga metiendo datos
{

$USUARIOS=$objPHPExcel->getActiveSheet()->getCell('A'.$i)->getCalculatedValue();
$GRUPO=$objPHPExcel->getActiveSheet()->getCell('B'.$i)->getCalculatedValue();
 
$valores.="('$USUARIOS','$GRUPO'),";
if(
$i==$f){
$valores=substr($valores,0,-1);
insert($valores//INSERTAMOS
$f+=1000;
$valores=""//Limpia la variable para los proximos 1000 registros
}

if(
$objPHPExcel->getActiveSheet()->getCell('A'.$i)->getCalculatedValue()==NULL)
//pregunto que si ha encontrado un valor null en una columna inicie un parametro en 1 que indicaria el fin del ciclo while
{
$param=1//para detener el ciclo cuando haya encontrado un valor NULL
}
$i++;
$contador=$contador+1;


// verificas cuando sales del while que no quede ningun resto in cargar
if($i<$f && $i>($f-1000)){
$valores=substr($valores,0,-1);
insert($valores//INSERTAMOS
}else{
    if(
$i<1000){ // SI NO SUPERA LOS 1000 REGISTROS CARGA LOS QUE ALLA
    
$valores=substr($valores,0,-1);
    
insert($valores//INSERTAMOS
    
}
}
//-----------------------------------------------------------------------/ 
?>