par
moogli » 04 juil. 2016, 13:33
salut,
tu as pas mal de chose redondante dans ton code.
tu commences pas if(!empty($_POST['nom']) tu sais donc que l'index existe dans $_POST et qu'il n'est pas vide. => pas besoin de rajouter les isset($_POST['nom'])
ensuite le second if c'est le else du premier (tu t'en rends mieux compte si tu vire les isset($_POST['nom'] inutile).
du coup tu ne set le cookie que si $_POST['stend'] existe.
a priori ton code pourrait se réduire à ceci
if (!empty($_POST['nom'])) {
$_SESSION['nom'] = $_POST['nom'];
if (isset($_POST['stend'])) {
echo 'tu as oublié ton prénom :)';
setcookie('nom', $_POST['nom'], time() + 365 * 24 * 3600, null, null, false, true);
}
header('location: suite.php');
} else {
echo 'tu as oublié ton prénom :)';
}
ceci dit "stend" ce n'est pas parlant et je ne sais pas a quoi cela sert.
au vu du code je comprend que tu souhaite mettre en cookie le nom et cela tu le fait si l'info est dans le formulaire.
Pour le coté logique de la chose, il est inutile de mettre le nom en cookie et en session (je sais que cela est a but didactique mais quand même

).
Dernière chose : tu n'as pas besoin de passer par des variables intermédiaire, cela n'aide pas forcément à la compréhension et au pire encombre la mémoire pour rien
@+