Ciao a tutti,
dovrei aggiornare una tabella in base ad un array di valori dati da un input select multiplo..
Partiamo dalle tabelle che sono 3:
la prima news
idn | tit | txt
la seconda brand
idb | nome
La terza relation
idr | idn | idb
uso la tabella relation per avere la possibilità di associare più brand ad una news..
creando quindi un paio di news ed associandogli dei brand mi ritrovo ad avere in tabella relation una situazione del genere..
idr | idn | idb
1 | 1 | 3
2 | 1 | 6
3 | 1 | 8
4 | 2 | 1
5 | 2 | 3
dove alla news 1 ho associato i brand con idb 3,6,8 e alla news 2 quelli con idb 1,3
prelevati dal mio input select multiplo con variabile $rel
per inserirli ho fatto così:
fino qua diciamo tutto bene..Codice PHP:$cg = $_POST['cg']; //id della news
if ($rel <> ""):
foreach($rel as $brandrel){
mysql_query("INSERT INTO relation(idn, idb) VALUES('$cg', '$brandrel')");
}
endif;
ora vorrei però che la query controlli se nella tabella relation esistano già relazioni in base all'array passato da $rel e nel caso aggiornare quei record oppure inserirne di nuovi..
e quelli non presenti nell'array cancellarli..
tra le mie tante prove mi sono incastrato qua..
Come posso fare?Codice PHP:$cg = $_POST['cg']; //id della news
if ($rel <> ""):
foreach($rel as $brandrel){
$query = mysql_query("SELECT * FROM relation WHERE idn='$cg' AND idb='$brandrel'");
if (mysql_num_rows($query) != 0) {
mysql_query("UPDATE relation SET idn = \"$brandrel\" WHERE idn = \"$cg\"");
}
else {
mysql_query("INSERT INTO relation(idn, idb) VALUES('$cg', '$brandrel')");
}
}
endif;
Grazie in anticipo..

Rispondi quotando
