Foros del Web » Programando para Internet » PHP »

Empezar a importar Archivo CSV pero desde una celda determinada

Estas en el tema de Empezar a importar Archivo CSV pero desde una celda determinada en el foro de PHP en Foros del Web. Hola a todos Bueno por aqui nuevamente. La pregunta es la siguiente. Estoy realizando una importacion desde una hoja excel a una tabla con codigo ...
  #1 (permalink)  
Antiguo 03/04/2006, 04:29
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 19 años, 7 meses
Puntos: 1
Empezar a importar Archivo CSV pero desde una celda determinada

Hola a todos

Bueno por aqui nuevamente.

La pregunta es la siguiente.

Estoy realizando una importacion desde una hoja excel a una tabla con codigo php, para tal efecto lo estoy realizando con archivo *.csv, pero lo puedo realizar comenzando con la primera celda, es decir, de la Celda A1 hasta donde este el ultimo dato.

Esto lo realizo muy bien, pero quisiera que empezara, por ejemplo desde la celda B10 hasta el ultimo dato.

Digo esto por que el cliente ya tiene unas plantillas y desde la celda A1 hasta A5 tienes unos datos, ES POR ESO QUE ERA MI PREGUNTA QUE EMPEZAR POR LA CELDA B10.

COMO PODRIA HACER ESTO YA QUE CUANDO LO HAGO DESDE EL INICIO (A1) LA IMPORTACION SE REALIZA SATISFACTORIAMENTE.


ACA LES MANDO EL CODIGO COMENZANDO POR EL INICIO

¿¿¿¿¿ COMO LE DIGO EN CODIGO QUE EMPIEZA A IMPORTAR DESDE LA CELDA B10 ????

$fp = fopen("puntuacion.csv","r");
while ($data = fgetcsv($fp, 10000, ";"))
{
$insertar="INSERT INTO carreras (id_any, id_cursa, fecha, posicion, tiempo, dorsal, nombres, apellidos, any_nac, club, categoria, poblacion, licencia)
VALUES ('$var_any', '$var_carreras', '$data[1]', '$data[2]', '$data[3]', '$data[4]', '$data[5]', '$data[6]', '$data[7]', '$data[8]', '$data[9]', '$data[10]', '$data[11]')";
} //fin while
fclose ($fp);


GRACIAS Y SALUDOS.
  #2 (permalink)  
Antiguo 03/04/2006, 08:13
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
fgetcsv saca linea por linea del archivo, si cuentas hasta la linea 10 para comenzar sacar los datos y obtienes del array el dato $data[2] (si es que el array comienza en 1 o data[1] si comienza en 0), estarás en la linea B10. Es decir, dejas pasar las primeras 9 lineas y nunca lees la primera posicion del array.
Ejemplo, suponiendo que el array comienza en 0 siendo esta la columna A.

Código PHP:
<?php
$fp 
fopen("puntuacion.csv","r");
$i=1;
while (
$data fgetcsv($fp10000";"))
{
   if(
$i>=10)
   {
      
$insertar="INSERT INTO carreras (id_any, id_cursa, fecha, posicion, tiempo, dorsal, nombres, apellidos, any_nac, club, categoria, poblacion, licencia)
VALUES ('$var_any', '$var_carreras', '$data[1]', '$data[2]', '$data[3]', '$data[4]', '$data[5]', '$data[6]', '$data[7]', '$data[8]', '$data[9]', '$data[10]', '$data[11]')"
;
   }
   
$i++;
//fin while
fclose ($fp);
?>
  #3 (permalink)  
Antiguo 07/04/2006, 09:18
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 19 años, 7 meses
Puntos: 1
Hola Claudio Vega .

No habia pensado que con tan solo declarar una variable $i me iba a transferir datos de un *.csv a mysql(es decir desde que fila quiero yo comenzarar a transferir).

Gracias y saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:41.