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

Symfony PHP Discussion :

Problème de récupération variable dans URL [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 41
    Par défaut Problème de récupération variable dans URL
    Bonjour à tous,

    J'essaie de valider l'inscription de mes futurs utilisateurs par un email contenant une clé d'activation, mais je n'arrive pas à récupérer cette clé d'activation dans l'url je ne sais pas trop pourquoi...

    Donc j'envoie un email avec dedans:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo url_for('http://nom_mon_site?activation_key='.$activation_key); ?>
    L'email arrive bien (hotmail ne prend pas cela comme un lien url alors que gmail oui, mais c'est un autre problème...) et ensuite j'essaie de récupérer l'activation key, pour le comparer avec un activation_key_bis généré automatiquement lorsque l'utilisateur se logue avec le Signin.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public function executeIndex() {
    $this->activation_key = $request->getParameter('activation_key');
    ....
    //test comparaison quand on valide le formulaire Signin:
    if ($this->formLogin->isValid()){
    ....
       if ($this->activation_key == $activation_key_bis){
           $this->getUser()->signIn (...)}
       else {
           $this->error_status='1';}
    Et dans mon fichier routing.yml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    homepage:
      url: /:activation_key
      param: {module: home, action: index, activation_key: ~
    Je sais que ce sujet a été traité sur ce forum avec une histoire de token mais je n'arrive pas quand même à résoudre mon problème...


    J'espère que quelqu'un pourra me mettre sur une piste.

    Merci beaucoup en tout cas,
    MissJu

  2. #2
    Membre émérite Avatar de kenny.kev
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    646
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 646
    Par défaut
    Bonjour à toi,

    Voici un lien qui permettra de répondre à presque toutes les questions que tu as posé :
    http://www.symfony-project.org/jobee...Doctrine/en/05

  3. #3
    Membre averti
    Femme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 41
    Par défaut
    Merci beaucoup pour la réponse.

    J'avais dejà regardé ce lien mais je n'arrive toujours pas à trouver la réponse à ma question...

    Il ne s'agit pas d'une route représentée par des objets Doctrine mais d'une variable ajoutée à un lien. Je n'arrive pas à la récupérer avec getParameter('ma_variable'), ce qui semble être la manière de faire...

    Aurais-tu une idée?

    (ps: j'ai aussi essayé avec $_GET['ma_variable'], et j'ai undefined index ma_variable... comme erreur)

  4. #4
    Membre émérite Avatar de kenny.kev
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    646
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 646
    Par défaut
    Ok,

    Alors, je t'avais transmit ce lien parce qu'en fait tout viens de la base. Je m'explique :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo url_for('http://nom_mon_site?activation_key='.$activation_key); ?>
    N'est déjà pas bon, tu devrais avoir soit :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo url_for('@homepage/'.$activation_key); ?>
    ou bien :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo url_for('home/index/'.$activation_key); ?>
    ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo url_for('@homepage?activation_key='.$activation_key); ?>
    Ensuite dans le routing.yml :
    tu dois avoir :
    Code yaml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    homepage:
      url: /:activation_key
      param: {module: home, action: index}

    Et la tout fonctionne.
    Tout ce que je viens de t'écrire viens du paragraphe : Route Customizations du précédent lien.

    Bon courage pour la suite.

  5. #5
    Membre émérite Avatar de kenny.kev
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    646
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 646
    Par défaut
    il manque aussi la déclaration de l'action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public function executeIndex(sfWebRequest $request) {

  6. #6
    Membre averti
    Femme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 41
    Par défaut
    J'avais deja essayé comme cela mais le problème c'est que là j'envoie un mail à partir d'un site hébergé donc en fait le lien lors de la réception du mail, quand on fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?php echo url_for('@homepage?activation_key='.$activation_key); ?>
    est sous cette forme " /934af3 " (934af3 étant un exemple ici d'activation_key) et rien d'autre.

    Comment doit-on déclarer l'adresse du site si ce n'est pas en faisant comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo url_for('http://nom_mon_site?activation_key='.$activation_key); ?>
    Avec cette méthode j'avais bien un lien url auquel on pouvait accéder...


    Le problème que j'ai est dans la récupération après de l'activation_key... Je pense que c'est vraiment un truc bête mais j'avoue ne pas réussir du tout à résoudre ce problème malgré de longue recherches Google...


    Merci beaucoup en tout cas pour ton aide!

    PS: et pour le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public function executeIndex(sfWebRequest $request) {
    J'ai juste oublier de le marquer, mais il est bien présent dans mon code...

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Août 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 25
    Par défaut
    Pour répondre au 1), le " http://mon_site/ma_clé " devrait te permettre de récupérer "ma_cle" via getParameter tout court ou encore GetRequestParameter.

    Si tu tiens vraiment à garder le '?', il faut que tu créé ta route comme ceci par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo url_for('@homepage', true) .'?activation_key='.$activation_key; ?>

  8. #8
    Membre averti
    Femme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 41
    Par défaut
    Je suis désolée je n'ai pas pu vérifier vos conseils jusqu'à aujourd'hui.

    Un énorme merci ca y est tout marche parfaitement, vous m'avez vraiment bien aidé, j'aurai eu beaucoup de mal sans vous!

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

Discussions similaires

  1. [WIN32[[D7] Variables dans Url et problème de syntaxe
    Par hepha1970 dans le forum Débuter
    Réponses: 10
    Dernier message: 18/10/2010, 13h25
  2. [Smarty] Problème récupération variable dans un for
    Par slaxsystem dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 02/05/2007, 17h10
  3. [FLASH MX] Variable dans URL
    Par assouline dans le forum Flash
    Réponses: 1
    Dernier message: 07/09/2005, 02h05
  4. [FLASH MX2004] Recuperation variable dans URL
    Par Bibicmoi dans le forum Flash
    Réponses: 11
    Dernier message: 20/08/2005, 14h05
  5. [ActionScript] Récupérer variable dans URL
    Par JohnBlatt dans le forum Flash
    Réponses: 2
    Dernier message: 20/07/2005, 10h21

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