Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Je réalise actuellement une interface d'administration pour un samba avec ldap.
Pour accèder à l'interface, il faut s'authentifier sur le serveur ldap en faite.
La connection et l'authentification au LDAP sont 2 opératiosn séparés.
A chaque nouvelle action ces opératiosn devront êtres refaites, est il "bien" de stocker l'objet de connection ldap dans une session ?
Hors ligne
Directement tu ne pourras pas, car PHP ne peut stocker de ressources en session.
Tu devras faire appel à __sleep() et __wakeup() ( ce procédé est utilisé dans ZF notamment pour stocker des objets métiers en mémoire ).
Plus d'infos ici : http://www.nexen.net/index2.php?option= … p;id=16931 (pdf)
Hors ligne
Php5 ne serialize pas de lui même quand on met en session un objet ?
Je pensais qu'il fallait juste que la classe soit inclue avant la "restauration"...
Hors ligne
Ca peut être un peu dangereux de stocker un objet en session. Si c'est un objet simple avec des variables normales, aucun problème, tu les mets en session et tu les récupères sans problème. Par contre si ton objet contient des références vers d'autres objets, seules les références sont sauvées en sessions. Comme l'objet vers qui pointe la référence n'est pas en session, ça ne marche pas.
En fait si ce sont tes objets, tu peux les stocker en session directement parce que tu sais ce qui se passe. Pour un objet de PHP ou d'une lib quelconque, tu risques d'avoir des surprises. Parfois dans la doc ils indiquent si l'objet est sérialisable ou pas. (si c'est sérialisable, ça rentre en session tel quel).
A+, Philippe
Hors ligne
Dans tous les cas, tout ce qui est de type ressource n'est pas sérialisable.
Une connection (ldap, bdd ... ) est une ressource, il n'est pas possible de la stocker en session, mais il est possible via __wakeup() et __sleep() de simuler un comportement semblable, en ouvrant et fermant soi-même la connection, à la main.
Hors ligne