Je rencontre ce problème dans CE1.9.1.
Lorsqu'un utilisateur s'inscrit (peu importe que ce soit lors du paiement ou à partir du lien Créer un compte), l'utilisateur continue d'obtenir l'erreur de non-concordance de mot de passe, même si le mot de passe est ressaisi correctement.
La validation du formulaire n'indique pas une erreur de correspondance, mais une fois qu'un utilisateur clique sur Enregistrer, il renvoie l'erreur de non-concordance.
Il n'y a aucune erreur dans la console chrome ...
J'ai trouvé ceci: "Veuillez vous assurer que vos mots de passe correspondent" - Erreur de mot de passe lors du paiement avec le nouveau formulaire d'inscription
Mais je ne pense pas que ce soit la même erreur.
J'ai besoin de le réparer bientôt, toute aide est grandement appréciée!
Réponses:
Les enfants de classe
Mage_Customer_Model_Customer
devraient utilisergetPasswordConfirmation()
au lieu degetConfirmation()
Upd: En classe
Mage_Customer_Model_Customer
, la méthode avalidate()
été modifiéeAvant la v1.9.1:
Après:
la source
Enfin, j'ai pu résoudre le problème.
Je dois mentionner qu'il n'est vraiment pas bon que les fichiers core de magento aient ce genre de problèmes lorsqu'ils sécurisent les mots de passe, je suppose que les développeurs principaux ont oublié des choses simples.
Ok, donc pour résoudre ce problème, vous devez remplacer le modèle client principal en local comme
app/code/local/Mage/Customer/Model/Customer.php
. Dans ce passage à la ligne no. 843 (si vous ne l'avez pas déjà remplacé) ou allez à la ligneif (strlen($password) && !Zend_Validate::is($password, 'StringLength', array(6))) { $errors[] = Mage::helper('customer')->__('The minimum password length is %s', 6); }
et ajoutez le code suivant sous ce bloc:Après cela, le mot de passe et le mot de passe de confirmation correspondront sur les pages "Commander" et "Créer un compte".
J'espère que cela pourrait aider quelqu'un.
la source
Si quelqu'un ne parvient toujours pas à comprendre pourquoi cela se produit: l'extension Conlabz Useroptin ( http://www.magentocommerce.com/magento-connect/newsletter-double-opt-in-for-customers.html ) peut provoquer ce problème. comportement aussi.
La mise à jour 1.1.0 de cette extension ajoute la compatibilité 1.9
la source
J'ai une extension qui remplaçait le AccountController.php et avait le même problème pour les plates-formes Magento en dessous de 1.9.1
Ma solution était;
la source
Pour moi
$this->getPasswordConfirmation()
ni$this->getConfirmation()
travaillé ni travaillé. Les deux ont renvoyé une chaîne vide. J'ai donc fini par accéder directement au paramètre POST, dans/app/code/core/Mage/Customer/Model/Customer.php
(oui, il vaut mieux utiliser une copie dans/app/code/local
):la source
c'est à cause de ce changement dans la mise à jour 1.9.1. Vous devez mettre à jour votre code d'extensions - Les mots de passe des clients ne sont plus stockés en texte clair lors de l'inscription.
la source
J'ai un même problème que j'utilise l'extension tierce pour le paiement, donc ce problème doit venir
J'ai résolu cette erreur en suivant les étapes suivantes
J'ai suivi les étapes ci-dessus pour déboguer le problème et le résoudre.
la source
Ma solution était
la source
Salut les amis Ce problème peut être résolu en procédant comme suit:
Étape 1: ouvrez ce fichier
/app/code/core/Mage/Customer/Model/Customer.php
Étape 2: recherchez cette ligne à l'
Customer.php
$confirmation = $this->getPasswordConfirmation();
étape 3: remplacez cette ligne par$confirmation = $this->getConfirmation();
Votre problème est maintenant résolu.
la source