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

Autres composants PHP Discussion :

[Zend_Session] Redirections et envoi des variables de vue


Sujet :

Autres composants PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Par défaut [Zend_Session] Redirections et envoi des variables de vue
    Bonjour,

    Je suis en train de me heurter à un petit problème qui entraîne quelques questions derrière lui.

    Je travaille sur la page d'authentification de mon appli. J'ai donc mes 2 champs login et password, mon controller, mes fonctions loginAction et logoutAction, etc, etc...

    En fonction du résultat de l'authentification, et également en fonction du type d'utilisateur qui vient de s'authentifier, mon controller redirige sur différents modules, et en tout les cas pas sur la vue qui porte le nom de l'action. En l'occurence, je n'ai pas de vue login.phtml.

    Le souci est que je dois transmettre différentes variables aux vues. Je pense par exemple à des variables telles qu'un message d'erreur, ou bien les nom/prénom de l'utilisateur.
    Lorsque l'on fait une redirection ( $this->_redirect('...'); ), les variables initialisées avec la technique $this->view->maVariable = "valeur"; ne sont pas transmises.
    Pour régler le problème, on m'a conseillé d'utiliser les sessions.
    Or je risque d'avoir besoin de ça à de nombreuses reprises dans mon appli, et je trouve un peu lourdingue d'utiliser les sessions à chaque fois, et pas très propre d'utiliser une autre solution qui serait de passer les variables par les url.

    Personne n'a d'autre solution ? Comment avez-vous gérer la chose ?

    Merci !

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 699
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 699
    Par défaut
    Pour l'affichage du message d'erreur, je trouve que c'est propre de mettre cette information dans l'URL puisque on respecte bien le principe d'une URL qui affiche une information et donc si on modifie l'URL on aura un autre affichage
    Et pour le nom de l'utilisateur, si j'ai bien compris il s'agit de l'utilisateur qui est connecté donc c'est normal que l'information se trouve dans la session, non ?

  3. #3
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Par défaut
    Pour l'utilisateur oui, mais je pense que j'aurai pas mal d'autres cas de redirections (en dehors des messages d'erreurs)...
    Je trouve que ça fait un peu bricolage de tout caser dans les sessions ou d'avoir des urls à rallonge de 3km de long

    Merci pour ta réponse

  4. #4
    Membre chevronné
    Homme Profil pro
    Lead Dev Web
    Inscrit en
    Avril 2005
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lead Dev Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2005
    Messages : 282
    Par défaut
    Les sessions sont faites pour ça....
    Dans tous les cas c'est de loin une solution plus propre que de mettre ça en url...

  5. #5
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Par défaut
    Ok merci à vous deux, je n'ai d'autres choix que de faire ça alors


  6. #6
    Membre averti
    Inscrit en
    Novembre 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 17
    Par défaut zend_registry
    Bonjour,
    je suis confronté au même probleme, mais dans mons cas j'ai utilisé la methode forward avec des parametres.
    Sinon, j'avais pensé à utiliser zend registry pour faire de ma vue un singleton et au debut de chaque controller me servir de ce singleton comme vu.

    Au final, ça passe par des sessions mais c'est transparent.

  7. #7
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Par défaut
    Pour ma part j'ai finalement utilisé les sessions. C'est pas mal sauf qu'il ne faut pas oublier d'inclure les classes dont on se sert dans la session avant de déclarer la session, sinon ça ne fonctionne pas.

  8. #8
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Je prends la discussion en route.
    Pour ma part, j'ai aussi choisit la solution des variables de SESSION pour l'authentification de mes utilisateurs. J'ai eu un peu de mal à mettre au point un mécanisme "transportable", mais maintenant, je l'utilise pour toute sorte de client web, y compris les mobiles.
    C'est une merveille.

    Néanmoins, je te met en garde sur l'utilisation de COOKIES pour "reconstruire" ta session en cas de fermeture du navigateur. Dans le cas de machines qui sont susceptibles d'être utilisées par plusieurs personnes, il faut être prudent. Et certain Navigateur en particulier les mobiles ont tendances à avoir les COOKIES assez persistant

    Riete

  9. #9
    Membre chevronné
    Homme Profil pro
    Lead Dev Web
    Inscrit en
    Avril 2005
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lead Dev Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2005
    Messages : 282
    Par défaut
    Citation Envoyé par riete Voir le message
    J... je l'utilise pour toute sorte de client web, y compris les mobiles...
    C'est à dire ? quels genres de soucis du peut avoir ? ( Hormis les cookies comme tu précises déjà )

  10. #10
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Je n'ai pas eu de soucis à part les Cookies. Cela demande juste pas mal de rigueur au niveau code pour éviter la persistance parasite de certaines variables d'un script à l'autre.

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

Discussions similaires

  1. Envoi des variables du formulaire vers deux pages
    Par Amelie MOREAU dans le forum Langage
    Réponses: 6
    Dernier message: 24/04/2013, 14h14
  2. [ZF 1.10] Passer des variable de vue dans init()
    Par MaitrePylos dans le forum MVC
    Réponses: 4
    Dernier message: 23/07/2010, 08h53
  3. [phpBB] Envoi des variables au gabarit avec phpBB Template phpBB
    Par okoweb dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 18/05/2010, 21h31
  4. Utilisation des variables de vue dans mon formulaire
    Par kaking dans le forum Zend_Form
    Réponses: 1
    Dernier message: 07/05/2010, 10h53
  5. Réponses: 5
    Dernier message: 26/04/2004, 19h02

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