Tengo este codigo con el cual importo un csv.
Estoy probando con este csv
Código csv:
Nose como hacer para que me muestre el error realmente donde esta.Ver original
Susca,Luis,20148530867,16357.10,34803.51,1 Iglesias,Sergio,20206910829,16357.00,01716.46,1 Saubidet,Sergio,20215053890,06357.00,26909.07,1 P1ieper,Gustavo,20218778772,05073.00,23177.95,1 // aca le puse un 1 al apellido para que me devuelva error, el problema es que me muestra el error en el ultimo apellido (Angulo) Fernandez,Gustavo,20176735016,05073.00,04628.59,1 Bianchi,Oscar,20168137797,06357.00,41943.42,1 zunzuneguy,daniel,20085694082,03593.00,07395.41,1 Orieta,Omar,20223258957,06357.00,11883.03,1 Angulo,Luis,20209035074,06357.00,13815.57,1
Este es el codigo php
Código PHP:
$error = 0;
$file = fopen($destino, "r");
while ($datos = fgetcsv ($file, 1000, ","))
{
$num = count($datos);
$apellido = $datos[0];
$apellido = str_replace("'"," ",$apellido);
$nombre = $datos[1];
$nombre = str_replace("'"," ",$nombre);
$cuil = $datos[2];
$basico = $datos[3];
$bruto = $datos[4];
$afili = $datos[5];
if(!(preg_match("/^([a-z ñáéíóú ÑÁÉÍÓÚ ]{2,50})$/i",$apellido))){
$error = 1;
}
elseif(!(preg_match("/^([a-z ñáéíóú ÑÁÉÍÓÚ ]{2,50})$/i",$nombre))){
$error = 2;
}
elseif(!cuitValido($cuil)){
$error = 3;
}
elseif(!is_numeric($basico)){
$error = 4;
}
elseif(!is_numeric($bruto)){
$error = 5;
}
elseif(trim((string)$afili) !== "0" && trim((string)$afili) !== "1"){
$error = 6;
}
}
if($error == 0)
{
if(!mysql_num_rows(mysql_query("SELECT cuil FROM ddjj WHERE cuil='$cuil'")))
{
mysql_query("INSERT INTO ddjj
VALUES ('null','$apellido','$nombre','$cuil','$basico','$bruto','$afili')");
}else
{
mysql_query("UPDATE ddjj
SET apellido='$apellido', nombre='$nombre', cuil='$cuil', basico='$basico', bruto='$bruto', afiliado='$afili' WHERE cuil='$cuil'");
}
}
if($error == 1){
echo ("La importacion se detuvo por el siguiente error <br />");
echo ("Corrija el siguiente campo $apellido e importe el archivo nuevamente");
unlink($destino);
}
elseif($error == 2){
echo ("La importacion se detuvo por el siguiente error <br />");
echo ("Corrija el siguiente campo $nombre e importe el archivo nuevamente");
unlink($destino);
}
elseif($error == 3){
echo ("La importacion se detuvo por el siguiente error <br />");
echo ("Corrija el siguiente campo $cuil e importe el archivo nuevamente");
unlink($destino);
}
elseif($error == 4){
echo ("La importacion se detuvo por el siguiente error <br />");
echo ("Corrija el siguiente campo $basico e importe el archivo nuevamente");
unlink($destino);
}
elseif($error == 5){
echo ("La importacion se detuvo por el siguiente error <br />");
echo ("Corrija el siguiente campo $bruto e importe el archivo nuevamente");
unlink($destino);
}
elseif($error == 6){
echo ("La importacion se detuvo por el siguiente error <br />");
echo ("Corrija el siguiente campo $afili e importe el archivo nuevamente");
unlink($destino);
}
elseif($error == 0){
echo "<script>
alert('Importacion exitosa');
window.location.href='form.htm';
</script>";
unlink($destino);
}
?>