Ciao a Tutti,
ho un comportamento, secondo me strano, con un ciclo for.
Praticamente vado a leggere un file excel e in seguito alla lettura di ogni riga vado ad inserire i dati letti in 4 tabelle.
Praticamente legge correttamente la prima riga, fa l'inserimento, ma poi si blocca e non va a leggere le righe successive (nel file che uso come esempio sono 5).
Vi posto il codice:
for($i=2; $i<=$data->sheets[0]['numRows'];$i++) {
for($j=1; $j<=$data->sheets[0]['numCols']; $j++) {
if($j==1) $codice = $data->sheets[0]['cells'][$i][$j];
else if($j==2) $desc = $data->sheets[0]['cells'][$i][$j];
else if($j==3) $cod_soc = $data->sheets[0]['cells'][$i][$j];
else if($j==4) $tipo = $data->sheets[0]['cells'][$i][$j];
else if($j==5) $remi = $data->sheets[0]['cells'][$i][$j];
else if($j==6) $capacita = $data->sheets[0]['cells'][$i][$j];
else if($j==7){
$dec = $data->sheets[0]['cells'][$i][$j];
$ap_tok;
$ind = 0;
$tok = strtok($dec,'/');
$ap_tok[$ind] = $tok;
while($tok!==false){
$ind++;
$tok = strtok('/');
$ap_tok[$ind] = $tok;
}
$apertura = $ap_tok[2]."-".$ap_tok[1]."-".$ap_tok[0];
}
else if($j==8) {
$ch = $data->sheets[0]['cells'][$i][$j];
$ap_tok;
$ind = 0;
$tok = strtok($ch,'/');
$ap_tok[$ind] = $tok;
while($tok!==false){
$ind++;
$tok = strtok('/');
$ap_tok[$ind] = $tok;
}
$chiusura = $ap_tok[2]."-".$ap_tok[1]."-".$ap_tok[0];
}
else if($j==9){
$vol_mese[0] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[0],'-')) $vol_mese[1] = 0;
else $vol_mese[0] = $vol_mese[0];
}
else if($j==10){
$vol_mese[1] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[1],'-')) $vol_mese[1] = 0;
else $vol_mese[1] = $vol_mese[1];
}
else if($j==11){
$vol_mese[2] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[2],'-')) $vol_mese[2] = 0;
else $vol_mese[2] = $vol_mese[2];
}
else if($j==12){
$vol_mese[3] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[3],'-')) $vol_mese[3] = 0;
else $vol_mese[3] = $vol_mese[3];
}
else if($j==13){
$vol_mese[4] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[4],'-')) $vol_mese[4] = 0;
else $vol_mese[4] = $vol_mese[4];
}
else if($j==14){
$vol_mese[5] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[5],'-')) $vol_mese[5] = 0;
else $vol_mese[5] = $vol_mese[5];
}
else if($j==15){
$vol_mese[6] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[6],'-')) $vol_mese[6] = 0;
else $vol_mese[6] = $vol_mese[6];
}
else if($j==16){
$vol_mese[7] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[7],'-')) $vol_mese[7] = 0;
else $vol_mese[7] = $vol_mese[7];
}
else if($j==17){
$vol_mese[8] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[8],'-')) $vol_mese[8] = 0;
else $vol_mese[8] = $vol_mese[8];
}
else if($j==18){
$vol_mese[9] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[9],'-')) $vol_mese[9] = 0;
else $vol_mese[9] = $vol_mese[9];
}
else if($j==19){
$vol_mese[10] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[10],'-')) $vol_mese[10] = 0;
else $vol_mese[10] = $vol_mese[10];
}
else if($j==20){
$vol_mese[11] = $data->sheets[0]['cells'][$i][$j];
if(!strcmp($vol_mese[11],'-')) $vol_mese[11] = 0;
else $vol_mese[11] = $vol_mese[11];
}
}

echo"RIGA $i, COLONNA $j
";
echo"$codice | $desc | $cod_soc | $tipo | $remi | $capacita | $apertura | $chiusura | ";
for($x=0;$x<12;$x++)
echo"$vol_mese[$x] | ";
echo"
";

$query = "INSERT INTO anagrafica_punti_clienti VALUES ('{$codice}', '{$cod_soc}', '{$desc}', '{$tipo}')";
$ins = mysql_query($query)or die('1:'.mysql_error());
$query = "INSERT INTO capacita_punti_clienti VALUES ('{$codice}', '{$apertura}', '{$capacita}')";
$ins = mysql_query($query)or die('2:'.mysql_error());
$query = "INSERT INTO id_punti_cliente VALUES ('{$codice}', '{$id}', '{$apertura}', '{$chiusura}')";
$ins = mysql_query($query)or die('3:'.mysql_error());

for($x=0;$x<12;$x++){
if($x==0) $data = "$anno-10-01";
else if($x==1) $data = "$anno-11-01";
else if($x==2) $data ="$anno-12-01";
[...QUA CI SONO GLI ALTRI MESI...LI OMESSI PER SEMPLICITA'...]
else if($x==11){
$anno_nuovo = $anno +1;
$data = "$anno_nuovo-09-01";
}
$query = "INSERT INTO volume_punti_clienti VALUES ('{$codice}', '{$data}',
'{$vol_mese[$x]}')";
$ins = mysql_query($query)or die('24:'.mysql_error());
}
}

Se io faccio l'insert nelle prime 3 tabelle (Anagrafica, capacita, id) non ci sono problemi e inserisce tutte e 5 le righe, il problema viene fuori nell'inserimento nell'ultima tabella, quindi probabilmente il problema è nell'ultima parte del codice, però io onestamente non riesco a trovarlo.
Grazieee
Buona Giornata