J'ai développé un site en php dans lequel il faut s'identifier pour entrer.
Pour vérifier sur chaque page si l'utilisateur est bien identifié, j'ai stocké un objet en session.
Cela fonctionne très bien en local sur mon poste, mais quand je test en ligne chez mon hébergeur, j'ai une erreur sur la 2eme page chargée quand on s'identifie.
Petite explication:
je recupère l'objet "oSession" et je vérifie que le login et le mot de passe de l'utilisateur est correct sinon je le redirige sur la page d'acceuil.
Et donc la 2eme fois que ce script est executer (chez mon hebergeur) j'ai cette erreur :
Warning: unserialize() expects parameter 1 to be string, object given in
/htdocs/public/www/Test/authentificate.inc.php on line
11
Fatal error: Call to a member function isValid() on a
non-object in /htdocs/public/www/Test/authentificate.inc.php on line
12
Je ne sais pas ce que comporte $oSession mais si ce n'est que de l'identification c'est à mon avis une mauvaise idée que de transmettre un objet : plus lourd côté ressource et code. Autant faire un if ($_SESSION['is_valid'] === true) etc ...
Par ailleurs pense à mettre des exit après tes headers.
Le pb doit être au niveau du serialise qui ne s'exécute pas correctement, car si c'était le cas tu n'aurais pas ce message d'erreur. Peux tu fournir le code ?
As tu fais un include de ta classe en début de script ?