Ho un form di questo tipo
Codice PHP:
Normale utente
<input type="checkbox" name="categ[]" value="0" />
<input type="text" name="prezzo[]" value="" />
Abbonati
<input type="checkbox" checked="checked" name="categ[]" value="1" />
<input type="text" name="prezzo[]" value="" />
gruppone riservato
<input type="checkbox" checked="checked" name="categ[]" value="2" />
<input type="text" name="prezzo[]" value="" /> [b]+ IVA[/b]</td>
pippo
<input type="checkbox" checked="checked" name="categ[]" value="3" />
<input type="text" name="prezzo[]" value="" />
Dove le categoria sono pescate da DB e il checkbox è l'ID della categoria ...ogni categoria può avere per cui un prezzo
------------------------------------------------
La pagina che riceve il form
Codice PHP:
$idcorso = $_POST['idcorso'];
$categ = $_POST['categ'];
$prezzo = $_POST['prezzo'];
//PULISCO SEMPRE TUTTO
mysql_query("DELETE FROM categorie_rif_corsi WHERE idcorso = '$idcorso'");
mysql_query("DELETE FROM prezzo_rif_corso WHERE idcorso = '$idcorso'");
$i=0;
foreach ($categ as $categoria) {
$prezzoins = $prezzo[$i];
mysql_query("INSERT INTO categorie_rif_corsi (idcategoria, idcorso) VALUES ('".$categoria."', '$idcorso')");
echo "INSERT INTO categorie_rif_corsi (idcategoria, idcorso) VALUES ('".$categoria."', '$idcorso')
";
mysql_query("INSERT INTO prezzo_rif_corso (prezzo, idcategoria, idcorso) VALUES ('".$prezzoins."', '".$categoria."', '$idcorso')");
echo "INSERT INTO prezzo_rif_corso (prezzo, idcategoria, idcorso) VALUES ('".$prezzoins."', '".$categoria."', '$idcorso')
";
$prezzoins = '';
$i++;
}
Inizialmente pulisco sempre tutto per non dover decidere se fare una insert o un update
e non ci sono problemi
----
Utilizzando la cosa mi sono accorto che se solo salto 1 campo...il prezzo mi "salta un giro"...
Tipo
primo inserimento OK
Normale utente 100
Abbonati 200
gruppone riservato 300
pippo 400
--------
Modifica escludendo gli abbonati..risultato
Normale utente 100 ok
gruppone riservato Fleggato ma con prezzo NULLO
pippo 300
--------
Le query di seguito
(query giuste quando TUTTI i campi vengono popolati dal form)
INSERT INTO prezzo_rif_corso (prezzo, idcategoria, idcorso) VALUES ('100', '0', '4')
INSERT INTO prezzo_rif_corso (prezzo, idcategoria, idcorso) VALUES ('200', '1', '4')
INSERT INTO prezzo_rif_corso (prezzo, idcategoria, idcorso) VALUES ('300', '2', '4')
INSERT INTO prezzo_rif_corso (prezzo, idcategoria, idcorso) VALUES ('400', '3', '4')
--------------------------------------------------------
Query errata (quando non tutti i campi vengono popolati)
INSERT INTO prezzo_rif_corso (prezzo, idcategoria, idcorso) VALUES ('100', '0', '4')
INSERT INTO prezzo_rif_corso (prezzo, idcategoria, idcorso) VALUES ('', '2', '4')
INSERT INTO prezzo_rif_corso (prezzo, idcategoria, idcorso) VALUES ('300', '3', '4')
--------------------------------------------------------
E' come se ci fosse lo slittamento del prezzo quando non spiedisco una determinata categoria
Help....