ho ottenuto questo codice che in pratica prende i dati da un form li pubblica in un db se sono corretti e poi prendendo un codice da un'altra tabella codici lo visuallizza nel messaggio quando vengono inviati i dati, ora vorrei fare in modo che il codice preso da quella tabella possa essere preso solo una volta, ho aggiunto alla tabella codici il campo stato e ora vorrei fare che se il codice viene stampato stato diventa=1 e a quel punto dire che se stato=1 il codice non lo prendo, mi dite come potrei fare?
codice:
// RECUPERA DATI DAL FORM
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
$indirizzo = $_POST['indirizzo'];
$email = $_POST['email'];
$telefono = $_POST['telefono'];
if (($nome=="") || ($cognome=="") || ($indirizzo=="") || ($email=="") || ($telefono=="")) {echo "non c'è scritto nulla";}
else if(!preg_match( '/^[\w\.\-]+@\w+[\w\.\-]*?\.\w{1,4}$/', $email)) {
echo "email non valida";
}
else {
// CONNESSIONE AL DATABASE
include('connect.php');
// INSERISCI NUOVO ARTICOLI IN DATABASE
$query = "INSERT INTO `datiform` ( `nome` , `cognome` , `indirizzo` , `email` , `telefono`)
VALUES ( '$nome', '$cognome', '$indirizzo', '$email', '$telefono')";
if (mysql_query($query)) {
echo "Record inserito con successo";
$query = "SELECT codice FROM codici ORDER BY RAND() limit 1";
$result = mysql_query($query);
while ($riga = mysql_fetch_object($result)){
echo $riga-> codice;
}
} else {
echo "Errore di inserimento record: ". mysql_error();
}
}