È possibile utilizzare una variabile di sessione, quindi annullarla immediatamente dopo?Cancella variabile di sessione dopo l'uso
Esempio:
//====
//Process Form
if ($_POST['Submit']) {
$update = $userSettings->update($_POST);
//If there are form errors
if (!$update) {
//Load the errors into an array
$errors = $update[1];
} else {
//Set the session
$_SESSION['showUpdated'] = true;
//Redirect to this page
header("Location: http://www.mysite.com/settings");
}
}
//==================
if ($_SESSION['showUpdated']) {
echo "Settings Updated";
unset($_SESSION['showUpdated'];
}
Così, dopo il modulo viene inviato, se non ci sono errori:
- impostare una sessione a dire il modulo di presentazione era okay
- ricaricare la pagina (per impedire i dati POST reinviati)
- Se la variabile di sessione "showUpdated" è impostata, visualizzare il messaggio "Aggiornato"
- Annulla la variabile di sessione (quindi non visualizziamo il messaggio alla prossima ricarica)
Attualmente il problema è, se si disattiva subito la variabile di sessione; È come se tu non lo avessi impostato prima della parte "se esiste".
Qualche soluzione? Questo è anche il modo migliore per farlo?
Grazie mille!
exit() o die() era quello che mi mancava, grazie! – steveneaston