Las consultas de subida de datos la estoy haciendo de 100 en 100, el problema se me presenta cuando la cantidad de registro a subir queda por debajo de 100 (ejemplo 85). Estos últimos registro no me lo sube completo siempre me deja algunos sin subir, la cantidad varia de acuerdo al resto que queda.
A continuación les dejo el código para ver si me pueden ayudar.
Gracias.
Código:
$numLineas = (count(file("storage/" . $files))) / 100;
if (!is_int($numLineas)) {
$numLineas = intval($numLineas) + 1;
}
$Resto = (count(file("storage/" . $files))) % 100;
//Comenzamos a procesar el fichero.
$v = 1;
$c = 1;
$cil = 1;
if (($gestor = fopen("storage/" . $files, "r")) !== false) {
while (($datos = fgetcsv($gestor, 1000, ",")) !== false) {
if ($c != 1) {
//Insertamos los datos siempre que la variable $v llegue a 100.
if ($v == 100 and $cil <= $numLineas) {.
//Insertamos los datos y ponemos la variable $v en cero
$cil++;
$v = 0;
}
//Insertamos el resto que no corresponde a a la cantidad de 100
if ($v == $Resto and $cil == $numLineas and $Resto != 0) {
//Insertamos el resto que queda.
$v = 0;
}
}
$v++;
$c++;
}
}
Valora esta pregunta