IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Objet en variable de session


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    r83
    r83 est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 271
    Par défaut Objet en variable de session
    Bonjour,

    pas spécialiste de l'objet en PHP. J'essaie de passer un objet d'une classe en variable de session.
    Quand j'essaie de récupérer cet objet dans une autre page, je n'accède plus aux méthodes publiques. Visiblement il considère la variable comme non-objet. Et pourtant quand je teste le type, il me dit Object .....
    Y
    j'ai essayé de caster comme en C, mais visiblement ça ne marche pas.
    Merci pour les idées...
    Bonne journée

  2. #2
    Membre chevronné Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Par défaut
    Bonjour,

    As tu fais un include de la class dans la seconde page ?

    Gillou

  3. #3
    r83
    r83 est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 271
    Par défaut
    Oui, j'ai fait un include.
    Merci

  4. #4
    Membre chevronné Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Par défaut
    Peux tu nous mettre le code de la page ou tu enregitres la session et celui ou tu veux la réstituer.

    Normalement, il n'y a rien de particulier à faire.

    Gillou.

  5. #5
    r83
    r83 est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 271
    Par défaut
    Voici le code, la page s'appelle elle même, elle crée la variable de session au premier appel

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    ?php 
    include ("classes.php");
    session_start();
    echo "nb var : ". count($_SESSION);
     
    echo "début";
    if (!isset($_SESSION["S_EMPLOYES"]))
    {
    	echo "1ere fois ";
    	$MesEmployes=new Employes("benoit","benoit");
    	$curseur=0;
    	$_SESSION["S_EMPLOYES"]=$MesEmployes;
    }
    else 
     
    	$test=$_SESSION["S_EMPLOYES"];
    	$MesEmployes=$test->GetLesEmployes();
    	echo "mesemployes" . $MesEmployes->GetUnEmploye(0)->GetNomemp();
    ça plante sur le echo.

    nb var : 1début
    Fatal error: Call to a member function GetUnEmploye() on a non-object in F:\objet\index.php on line 18
    Merci

  6. #6
    Membre chevronné Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Par défaut
    Pour s'assurer qu'il n'y a pas d'erreur dans les methodes ou dans les class, peux tu faire ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    ?php 
    include ("classes.php");
    session_start();
    echo "nb var : ". count($_SESSION);
     
    echo "début";
    if (!isset($_SESSION["S_EMPLOYES"])) {
      echo "1ere fois ";
      $MesEmployes=new Employes("benoit","benoit");
      $curseur=0;
      $_SESSION["S_EMPLOYES"]= "test_session";
    } else {
      $test=$_SESSION["S_EMPLOYES"];
      echo $test;
    }

    et :
    - n'oublie pas les acolades autour des if et des else
    - n'oublie pas les balises [C O D E] et [/C O D E] quand tu veux nous montrer du code

    question : tu veux que la session S_EMPLOYES soit un tableau avec des objets Employes ?

    Gillou

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. variable de session dans un objet
    Par ben53 dans le forum Langage
    Réponses: 4
    Dernier message: 24/01/2007, 17h51
  2. Mettre un objet dans une variable de session
    Par dondano dans le forum Langage
    Réponses: 4
    Dernier message: 27/11/2006, 22h07
  3. objet en variable de Session
    Par Tyramon dans le forum Langage
    Réponses: 16
    Dernier message: 10/11/2006, 14h34
  4. Réponses: 19
    Dernier message: 02/02/2006, 23h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo