Pour empêcher l'actualisation de la page, un cookie sera utile; Pour vérifier les champs vides, isset()
<?php
//in the top of the page, BEFORE every output!
if(isset($_COOKIE['givemeaname'])){
setcookie('givemeaname', 'some foo&bar data, maybe a timestamp?', time()+3600);
//now check the mandatory fields and
//do whatever you want with your db
}else{
//do nothing, the page is been refreshed!
}
//do whatever you have to do now!
?>
Si vous n'aimez pas déplacer votre code db-about dans le haut de la page, dans le cookie vérifier que vous pouvez valoriser un var booléen, et puis juste chet il ... Choisissez votre chemin.
Au lieu du cookie, vous pouvez utiliser une session, si plus de commodité pour vous .. mais le comportement doit être clair;)
Cette solution vous permettra d'économiser tous les temps, becose même si vous frappez la page avec un formulaire POST, certains navigateur demandent de renvoyer l'information à nouveau lorsque vous êtes invité à actualiser la page (et les utilisateurs paresseux cliquent généralement 'oui' sans lire ou comprendre ce que cela signifie;)
L'accord sur ce site est que Si vous obtenez une réponse qui vous aide à résoudre votre problème, cliquez ** cette grande coche ** à côté de la réponse qui a le mieux résolu votre problème. – random