Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
j'utilise un fichier layout.phtml qui est mon layout par défaut.
J'aimerai y inclure une loginbox (un formulaire , login, password submit pour se logguer au site).
Ce formulaire n'ets donc pas une simple vue à inclure, il me faut tout le process de l'action du controleur associé.
Comment peut-on donc faire un render immediat d'une action de controleur à la volée dans un layout?
Merci d'avance
Hors ligne
avec le plugin ActionStack et les segments, ou bien alors via l'aide de vue 'action'.
Hors ligne
merci,
quelqu'un pourrait donner un peu plus de détail la dessus?
Hors ligne
La doc ?
Sinon t'as un helper de vue action().
Une petite remarque, c'est pas très optimisé de mettre un process de login sur toutes tes pages.
Hors ligne
merci je vais donc me renseigner la dessus (la doc d'actionStack j'ai lu mais j'ai pas trop saisi comment procéder pour faire ce que je voulais)
Quel est le problème à avoir une login box sur toutes les pages? Ca évite un click (sur un lien logez vous ici). Y'a des gens à qui ca suffit pour ne plus aller sur votre site
Hors ligne
Certes, mais entre mettre un formulaire de login, et tout le processus de login appelé sur chaque page...
Moi je fais plutot un block dans mon template qui soit si le gas est loggé, affiche un dashboard, soit affiche le formulaire de login.
Le formulaire de login pointe sur une action spécifique, qui n'est pas appelé depuis la layout. Elle n'effectue aucun rendu, mais met un message en session si login fail puis redirige sur la page précédente.
Après ça se discute.
Hors ligne
Oui ok je vois.
Perso j'utilise (comme tu me l'as indiqué) le helper action qui appèle mon controlleur de display de ma login box, la première chose que fait ce controller est de tester si le gars est logé ou pas.
Si il est pas loggué ben process + formulaire si il l'est display de la view "dashboard"
je pense que ca revient au même alors non?
merci en tout cas pour les infos du helper
Hors ligne
Bonjour,
Je débarque un peu en pleine discussion
Mr.MoOx a écrit:
Certes, mais entre mettre un formulaire de login, et tout le processus de login appelé sur chaque page...
Je suis d'accord avec Mr.MoOx, et me demande d'ailleurs comment faire pour mettre un process de login sur chaque page ?
Pour ma part le process de login est dans une action de mon controller Login. Le formulaire de login est dans une classe Form_Login.
Dans mon header, je teste si une identité existe. Si oui, alors je récupère les infos du registre que j'ai mis lors de l'authentification et les affiche, sinon, j'instancie un formulaire Form_Login que j'affiche alors.
La méthode vous semble t elle correcte ou ai-je loupé un truc??
Merci d'avance pour vos remarques et commentaires
Hors ligne
Pour ma part le process de login est dans une action de mon controller Login. Le formulaire de login est dans une classe Form_Login.
Dans mon header, je teste si une identité existe. Si oui, alors je récupère les infos du registre que j'ai mis lors de l'authentification et les affiche, sinon, j'instancie un formulaire Form_Login que j'affiche alors.
Moi je fais comme ça.
Perso j'utilise (comme tu me l'as indiqué) le helper action qui appèle mon controlleur de display de ma login box, la première chose que fait ce controller est de tester si le gars est logé ou pas.
Si il est pas loggué ben process + formulaire si il l'est display de la view "dashboard"
je pense que ca revient au même alors non?
Tout dépends de la structure de ton code.
Mais en terme d'optimisation, entre faire un test sur l'identité, et afficher tel ou tel vue (via un plugin ou directement dans le layout), et directement faire appel à une action (via la pile ou le view helper), il y a surement une différence.
Hors ligne
Pages: 1