Bonjour,
J'ai un problème avec les variables de session, et je me demande si ça ne vient pas d'OVH (mon hébergeur).
Sur un extranet, j'ai un formulaire d'identification qui crée un objet utilisateur lorsque l'authentification a réussi. Il place cet objet dans une variable de session.
Ce qui permet, sur les autres pages, de tirer de l'objet le nom, le prénom, l'e-mail, etc ... selon la page. Tout ceci fonctionne très bien ... en local avec WAMP, mais dès que je le mets sur le serveur, ça bug.
Voici les extraits du code :
Script d'identification :
Code :
- $objet = new Utilisateur($login, $nom, $prenom, $email);
- $_SESSION['utilisateur'] = serialize($objet);
|
Page qui utilise l'objet
Code :
- if (isset($_SESSION['utilisateur'])) {
- $objet = unserialize($_SESSION['utilisateur']);
- $nom = $objet->getNom();
- $prenom= $objet->getPrenom();
- $email = $objet->getEmail();
- }
- else { ...}
|
La première fois, ça marche, la seconde, ça me dit :
Fatal error: Call to a member function getNom() on a non-object in [...] on line 14
Après quelques tests, j'ai l'impression que ça vient de la fonction serialize/unserialize. lorsque je fait un echo de la variable de session, la première fois j'ai une chaîne de charactères, la seconde une référence objet.