Ragazzi ho fatto un inserimento multiplo, e funziona, solo che se il contattore è 10 mi inserisce anche i valori nulli oltre a quelli veri come posso ovviare, vi mostro los cript
parte form:
Codice PHP:
if (! $db->Query("SELECT * FROM gestori ORDER BY gestore")) echo $db->Kill();
$i = 0;
while($gestore = $db->Row()){
echo "<tr>";
echo "<td>{$gestore->gestore}</td>";
echo "<td><input type=\"checkbox\" name=\"idgestore{$i}\" value='{$gestore->idgestore}'>
</td>";
$i++;
echo "</tr>";
}
Parte dell'inserimento :
Codice PHP:
if (! $db->Query("SELECT * FROM gestori ORDER BY gestore")) echo $db->Kill(); echo $numeroUpload = $db->RowCount(); $sqlValues = array(); // inizializiamo l'array con i valori della query INSERT
for ($i = 0; $i < $numeroUpload; $i++) { $sqlValues[] = "('". $_REQUEST['idgestore'. $i]."','{$_REQUEST['idtipologiaprodotto']}' )"; } echo $sql = 'INSERT INTO `gestionetipologieprodottigestori` (`idgestore` , `idtipologiaprodotto`) VALUES '. implode(', ', $sqlValues);
die(); // messo il die perchè non voglio ancora che metta dati nel db , ci sono troppi valori null $db->Query($sql);
Quello che stampo facendo echo della query
Codice PHP:
10 (echo del contatore)
INSERT INTO `gestionetipologieprodottigestori` (`idgestore` , `idtipologiaprodotto`) VALUES ('','5' ), ('11','5' ), ('4','5' ), ('','5' ), ('','5' ), ('','5' ), ('','5' ), ('','5' ), ('','5' ), ('','5' )