Salut
J'ai une première page, qui contient un formulaire (appelons la PageA.php).
Lors de la validation du formulaire se trouvant sur cette page, je fais appel à une autre page (appelons la PageB.php) qui sera chargée de vérifier les données qui ont été saisie sur PageA.php.
A titre personnel, j'ai jamais adhéré à ce principe. Pour ma part, c'est mélanger 2 choses, donc 2 pages.
Chacun fait comme il veut, évidemment, de mon coté je recharge la même page, tout simplement
Donc dans le formulaire, l'action sera la même page :
<form action="PageA.php" />
Le fait de recharger la même page, et bien s'il y a erreur, il n'y pas besoin de retransmettre.
Suffit d'exploiter les données reçues en POST ou GET.
Par contre, une fois avoir traité tout ce qui doit être fait grâce à ces données, dans le cas ou il n'y a pas erreur, et bien au bout, on peu faire une redirection avec un header() vers la page PageB.php.
Ca me semble simple et efficace.
Pour ce faire, très souvent, je rajoute un champ caché avec comme nom "action" et une valeur qui définira les traitements qui seront à faire.
Au bout ça donne un truc du genre :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
<?php
$action = (isset($_POST['action']) && !empty($_POST['action'])) ? : NULL;
//
if (!empty($action)) {
switch ($action) {
case 'insertion' :
// ... code concernant l'insertion ...
if ($error == false) {
header('Location: PageB.php');
}
break;
}
}
?>
<html>
... partie HTML PageA ...
</html> |
Partager