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

PHP & Base de données Discussion :

[Doctrine] Fonction de déchiffrement


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 73
    Par défaut [Doctrine] Fonction de déchiffrement
    Bonjour,

    Dans ma table des utilisateurs ('membres'), les mots de passe sont cryptés avec la fonction MySQL AES_ENCRYPT (je ne peux pas changer cela).
    Le problème est que je n'arrive pas à contrôler si le mot de passe entré par un utilisateur est correct, car la fonction AES_ENCRYPT ne fonctionne pas... ou alors je m'y prend mal.
    Voici le code ($login, $password et $key sont données bien sur) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $q = Doctrine_Query::create()
    			->select('m.*')
    			->from('Membres m')
    			->where('m.membre_login = ?', $login)
    			->andWhere('m.membre_password = ?', AES_ENCRYPT($password, $key));
     
    		$row = $q->execute();
    et l'erreur est : Call to undefined function AES_ENCRYPT()

    de même le code suivant abouti à une erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $q = Doctrine_Query::create()
    			->select('m.*')
    			->from('Membres m')
    			->where('m.membre_login = ?', $login)
    			->andWhere('AES_DECRYPT(m.membre_password, '.$key.') = ?', $password);
     
    		$row = $q->execute();
    L'erreur est : Unknown aggregate alias: maCleDeCryptage

    Comment faire?

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

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 665
    Par défaut
    c'est expliqué là, tu dois passé les arguments dans un tableau :
    http://www.doctrine-project.org/docu...put-parameters

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ->andWhere('AES_DECRYPT(m.membre_password, :cle) = :motDePasse', array(':cle' => $key, ':motDePasse' => $password))

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 73
    Par défaut
    Tu viens de me sauver ! Merci!
    Une demi-journée de prise de tête pour ça...

    Petite précision, il faut utiliser la même démarche dans les deux conditions where, c-a-d:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ->where('m.membre_login = :login', array(':login' => $login))
    ->andWhere('AES_DECRYPT(m.membre_password, :cle) = :motDePasse', array(':cle' => $key, ':motDePasse' => $password))
    Sinon ça sort une erreur : Invalid parameter number: mixed named and positional parameters

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

Discussions similaires

  1. [2.x] fonction repository->find() doctrine
    Par strauss69400 dans le forum Symfony
    Réponses: 2
    Dernier message: 10/09/2014, 14h19
  2. [Doctrine] Schema.yml comportement different en fonction des versions mysql
    Par bedomon dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 04/04/2012, 11h58
  3. [1.x] liste doctrine en fonction de l'objet
    Par Monnier dans le forum Symfony
    Réponses: 1
    Dernier message: 07/11/2011, 12h40
  4. [1.x] fonction recursive doctrine
    Par lepopol dans le forum Symfony
    Réponses: 1
    Dernier message: 22/06/2011, 09h05
  5. [Doctrine] Requête dans une fonction callback
    Par darkalex dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 24/10/2010, 12h34

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