Classes & Sessions

page 1 page 2
Répondre
bibi
bibi
Déconnecté
commit suicide
Bonjour les gens, ca faisait relativement longtemps que je n'étais pas venu sur le forum mais la j'ai un ptit probleme . J'ai une classe "membre", que j'instancie quand le mec se log on, objet que je met dans une session comme ceci:

$_SESSION['infos_membre'] = new Membre($id);
je fais un print_r($_SESSION['infos_membre']);

et cela m'affiche :

  1.  
  2. membre Object
  3. (
  4. [num] => 1
  5. [nom] => Traerin
  6. [level] => 127
  7. [mail] => slak@wanadoo.fr
  8. [error] => Array
  9. (
  10. )
  11.  
  12. ) 


Donc ceci, sur la page de log on, donc tout marche bien . Maintenant, quand je vais sur une autre page et que je fais le meme print_r, voila ce que j'obtient :

  1. __PHP_Incomplete_Class Object
  2. (
  3. [__PHP_Incomplete_Class_Name] => membre
  4. [num] => 1
  5. [nom] => Traerin
  6. [level] => 127
  7. [mail] => slak@wanadoo.fr
  8. [error] => Array
  9. (
  10. )
  11.  
  12. ) 


et je ne plus accéder à mes variables. Si qqn avait deja eu ce probleme ...

Merci d'avance
zebden
zebden
Déconnecté
zebdinou pour les intimes / Blog : http://www.zebden.fr
Parce que la class membre n'est pas instancié sur chaque page

__PHP_Incomplete_Class Object
(
[__PHP_Incomplete_Class_Name] => membre


Mais le reste des variables sont quand meme passées. il vaut mieux apparement quand tu as instancié ta class que tu retourne un tableau pour le mettre en session.
moogli
moogli
Déconnecté
Il en faut peu pour être heureux !!!!!
Salut bibi, sa fait un baille ;)

il faut que tu serialize ton object pour le passer d'une page a l'autre.

ensuite pour récupérer ton object il faut que tu déclare ta classe avant desérializer ton objet ( en gros include ...) si non ta une erreur :)

smiley
bibi
bibi
Déconnecté
commit suicide
nonon c pas un probleme de serialisation, la ou je fais mon stage ils font comme cela et ca fonctionne tres bien, et vu l'audience du site et la compétence du webmaster, je pense pas que ce soit de la merde.

Je vais faire le truc du tableau mais bon a mon taff on fait ca et ya pa de probleme c ca que je capte pas trop mais bon ...

merci quand meme a vous 2 :)
zebden
zebden
Déconnecté
zebdinou pour les intimes / Blog : http://www.zebden.fr
peut etre en utilisant une méthode sans passer par l'objet direct genre

$tata = new toto;
$info = $tata -> get_info_membre($id);

$_SESSION['info_membre'] = $info .. ca passera surement. (edit : peut etre)
bibi
bibi
Déconnecté
commit suicide
ouais mais ca s'utiliseras commme un tableau et non comme un objet :) .

Je vais voir demain au taff comment ils ont fait et si j'y arrive pas , je ferais comme ca


Merci :)
Lefounard
Lefounard
Déconnecté
I am singing in the rain , I am happy again !!
peut-etre que c'est vis-a-vis de la récuperation de l'objet qu'il faut regarder et surtout le type de l'objet !
Ciao,
bibi
bibi
Déconnecté
commit suicide
comment ca de la récupération de l'objet ?


et le type de l'objet c ce qu'il y a avant le mot "object" ici __PHP_Incomplete_Class
zebden
zebden
Déconnecté
zebdinou pour les intimes / Blog : http://www.zebden.fr
Faut pas l'ecouter .. il est pas des notres smiley
bibi
bibi
Déconnecté
commit suicide
smiley
mojorisin
mojorisin
Déconnecté
echo ’16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlbxq’|dc
En fait il te faut inclure ton objet AVANT d'instancier ta session sur la page.
Voila j'ai tout dit smiley
bibi
bibi
Déconnecté
commit suicide
euh hein ? j'ai pas compris lol
moogli
moogli
Déconnecté
Il en faut peu pour être heureux !!!!!
Effectivement (après discution avec Zebden :) ) il semble que la sérialisation ne soit pas nécésaire !

par contre comme nous te l'avons conseillé, il faut déclarer ta classe avant l'appele au session_start(). Ceci pour raison évidente, PHP ne connais pas ta classe (structure, propriété ...) il ne peut donc pas l'instancier dans ta variable de session :)
=>
  1.  
  2. <?php
  3. include 'taclasse.php';  
  4. session_start();  
  5. ?>
  6.  


devrait résoudre (je pense ton problème) smiley

smiley
bibi
bibi
Déconnecté
commit suicide
ah oué mé le gogol g copié ca a l'arrache dans un fichier de config sans vérifier l'ordre des choses mdr smiley

jtest ca csoir merci
moogli
moogli
Déconnecté
Il en faut peu pour être heureux !!!!!
de rien smiley

smiley
page 1 page 2
Répondre
Accès rapide :

Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Php - Breizh Blog