Gestion de sessions

Eléphant du PHP | 226 Messages

04 nov. 2011, 11:31

Bonjour/ bonsoir,

J’éprouve un souci dans la gestion des sessions. J'ai un formulaire, avec quelques champs.
<form method="post" name="form_setRegister" id="form_setRegister" action="../controller/ControllerCompte.php">
...
<input type="text" id="nom" name="nom" value="<?php if(isset($_SESSION['newUser']['nom'])) echo $_SESSION['newUser']['nom']; ?>" />
...
<input type="text" id="prenom" name="prenom" value="<?php if(isset($_SESSION['newUser']['prenom'])) echo $_SESSION['newUser']['prenom']; ?>" />
etc.
Dans 'ControllerCompte.php', j'effectue une vérification des champs
class ControllerCompte {
...
public function register($form) {
if (!empty($_POST['nom'])) {
            $_SESSION['newUser']['nom'] = filter_var($_POST['nom'], FILTER_SANITIZE_STRING);
        } else {
            $this->errors .= 'Un nom svp<br>';
        }
//
 if (!empty($_POST['prenom'])) {
            $_SESSION['newUser']['prenom'] = filter_var($_POST['prenom'], FILTER_SANITIZE_STRING);
        } else {
            $this->errors .= 'Un prenom svp<br>';
        }
...
//        Si pas d'erreur
        if (empty($this->errors)) {
            $this->modelCompte->newUser(); //mysql
        } else {
            header('Location: ../view/inscription.php');
            exit();
        }
}
$controlCompte = new ControllerCompte(); //la création de l'objet se fait dans le même fichier
$controlCompte->register($_POST); 
En cas d'erreur, une redirection s'effectue sur inscription.php. Mais toute session est vide. Dans un cas comme celui-ci, comment gérez-vous vos sessions ?
merci,
ps : je sais qu'il faudrait que je fasse la même chose pour les erreurs
«Le matin, quand il t’en coûte de te réveiller, que cette pensée te soit présente: c’est pour faire œuvre d’homme que je m’éveille.»
Marc Aurèle.

ViPHP
xTG
ViPHP | 7331 Messages

04 nov. 2011, 12:15

Mais toute session est vide.
As-tu un session_start() ?

devlop78
Invité n'ayant pas de compte PHPfrance

20 janv. 2012, 18:44

Voilà ça c'est dit, mais quel rapport avec PHP orienté Objet ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

20 janv. 2012, 21:39

Voilà ça c'est dit, mais quel rapport avec PHP orienté Objet ?
Et en quoi cette intervention aide au sujet de base ?
Ou, pour le formuler différemment, pourquoi ne pas signaler, plutôt que de polluer le sujet ?
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

25 janv. 2012, 12:31

Voilà ça c'est dit, mais quel rapport avec PHP orienté Objet ?
En fait, le bouton signaler sur les messages permet d'alerter un modérateur que ce message est mal placé. Ainsi on le déplace :)
Merci de ta vigilance.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.