Ver Mensaje Individual
  #8 (permalink)  
Antiguo 14/03/2013, 21:01
CoolM
 
Fecha de Ingreso: junio-2010
Mensajes: 31
Antigüedad: 12 años, 2 meses
Puntos: 1
Respuesta: Load bar idea..

este es el codigo que registra y dura mas de 1h en registrar o actualizar en la base de datos

que hace primero abro el archivo previamente subido el archivo pesa 15M y tiene mas de 90 mil lineas

leo el archivo y separo los campos ya que son de ancho fijo cada campo tiene su tamanio

verifico el codigo del archivo con el que tengo en la base de datos para ver si ya existe si existe actualizo si no registro

tarda por que se hace todo ese proceso linea por linea me imagino ..

cuando termina de procesar envia el mensaje a la vista que esta esperando la respuesta.. que son los echos que salen alli en caso de un erros muestra el echo de erro, si no muestra que se ingresaron bien ... tu crees que si coloco los echos del script que me incremente el load bar... se valla mostrando en cada ciclo... ??


Código PHP:

public function insertarRepuestosMaster($archivo_nombre){
        
        
$archivo file('C:\wamp\www\pedidoSugerido\archivos\ '.$archivo_nombre);  
        
$cont_linea 0;
        
$mensaje "error";
        
$mensajeU "Datos Actualizados";
        
$mensajeI "Datos Registrados";
        
$contarUpdate 0;
        
$contarInsert 0;
        
              for(
$i=0;$i<1;$i++){
                   
                  
$maximo strlen($archivo[$i]); // cuantos caracteres tiene la primera linea 163
              

   
           if(
$maximo == '163'){
              
               foreach (
$archivo as $linea_num => $linea)
           {
              
$codigo substr($linea017);
              
$codAlt substr($linea1721);
              
$precio substr($linea3817);
              
$descripcionMala substr($linea5523);
              
$campo5 substr($linea788);
              
$campo6 substr($linea8632);
              
$campo7 substr($linea11820);
              
$campo8 substr($linea13812);
              
$campo9 substr($linea15011);
              
              if(
$this->verificarMaster($codigo)){
                  
$data "";  
                  
$data = array(
                      
'codigo' => $codigo,
                      
'codigoAlt' => $codAlt,
                      
'precio' => $precio,
                      
'descripcion' => $descripcionMala,
                      
'campo5' => $campo5,
                      
'campo6' => $campo6,
                      
'campo7' => $campo7,
                      
'campo8' => $campo8,
                      
'campo9' => $campo9
                      
);
                  
           
$id $this->verificarMaster($codigo);
          
           
$this->db->where('id'$id);
           
$this->db->update('master',$data);
           
$contarUpdate ++;
           
           
$mensaje $this->db->_error_message();
           if(empty(
$mensaje)){
           
$mensajeU "Datos Actualizados";
           }else{
               
$mensaje "Error Archivo Incorrecto";
                }
                  
              }else{
              
              
$this->db->set('codigo',$codigo);
              
$this->db->set('codigoAlt',$codAlt);
              
$this->db->set('precio',$precio);
              
$this->db->set('descripcion',$descripcionMala);
              
$this->db->set('campo5',$campo5);
              
$this->db->set('campo6',$campo6);
              
$this->db->set('campo7',$campo7);
              
$this->db->set('campo8',$campo8);
               
$this->db->set('campo9',$campo9);

              
$this->db->insert('master'); 
              
$contarInsert ++;
              
           
$mensaje $this->db->_error_message();
           if(empty(
$mensaje)){
           
$mensajeI "Datos Registrados";
           }else{
              
               
$mensaje "Error Archivo Incorrecto";
                }
              
              }
           }
           
              echo 
$mensajeU.": ".$contarUpdate."  ".$mensajeI.": ".$contarInsert;
               
               
           }  else {
               
              echo 
"Archivo Incorrecto";
           }
        
          
             
// echo $cont_linea."Registros";
        
    

__________________
Miguel0N