Ciao! Ho il seguente problema.
Ho degli utenti, che possono essere iscritti a nessuna, una, o più gare.
Dall'area riservata, tramite form, devo poterli iscrivere o cancellare a/da una/più gare (oltre a migliaia di altre cose).
Ho predisposto una checkbox di questo tipo:
[ ] gara 1
[ ] gara 2
[ ] gara 3
effettuo una select dal database, e in base all'id dell'utente estraggo gli id delle gare cui è iscritto, e stampo un checked per ogni checkbox corrispondente.
Il codice della checkbox è di questo tipo:
<input type="checkbox" name="idgara[]" value="".$idgara.""> ($idgara viene estratto dal database, tabella gare)
Tutti i valori quindi mi confluiscono nell'array $_POST['idgara']=$idgara.
Il problema si presenta quando ho questa situazione:
[x] gara 1
[x] gara 2
[ ] gara 3
e tolgo la spunta dalla gara 1. A quel punto l'array $idgara contiene un solo valore, mentre nel database ho due relazioni relative a quel pilota, con due diverse gare.
Come faccio a capire quale delle due relazioni va cancellata? E come?
Avevo pensato di fare una select di tutte le relazioni dell'utente, verificare se il numero di record recuperati è maggiore degli elementi dell'array $idgara, e a quel punto so che si intende cancellare una relazione. Ma a questo punto come faccio a capire quale?!
Si potrebbe fare un foreach ($idgara as $key => $value) con all'interno una select * from tb_utentigare where idutente='$id' and idgara='$value', e se mi dà un risultato so che quello deve restare, ma se nell'array manca quello che devo cancellare, come faccio a cancellarlo?!?!
povera me![]()