Ich stoße auf dieses Problem in CE1.9.1.
Wenn sich ein Benutzer registriert (egal ob beim Auschecken oder über den Link "Konto erstellen"), erhält der Benutzer weiterhin den Fehler, dass das Kennwort nicht übereinstimmt, obwohl das Kennwort erneut korrekt eingegeben wurde.
Die Formularvalidierung zeigt keine Nichtübereinstimmung an, aber sobald ein Benutzer auf Registrieren klickt, wird der Nichtübereinstimmungsfehler zurückgegeben.
Es gibt keine Fehler in der Chromkonsole ...
Ich habe Folgendes gefunden: "Bitte stellen Sie sicher, dass Ihre Passwörter übereinstimmen" - Passwortfehler bei der Kaufabwicklung mit neuem Registrierungsformular
Aber ich glaube nicht, dass es der gleiche Fehler ist.
Ich muss es bald beheben, jede Hilfe wird sehr geschätzt!
quelle
Antworten:
Kinder der Klasse
Mage_Customer_Model_Customer
solltengetPasswordConfirmation()
statt verwendengetConfirmation()
Update: In der Klasse
Mage_Customer_Model_Customer
wurde die Methodevalidate()
geändertVor v1.9.1:
Nach:
quelle
Endlich konnte ich das Problem lösen.
Ich muss erwähnen, dass es wirklich nicht gut ist, dass Magento-Core-Dateien diese Art von Problemen haben, wenn sie die Passwörter schützen. Vermutlich haben die Core-Entwickler einige einfache Dinge vergessen.
Ok, um dieses Problem zu beheben, müssen Sie das Kernkundenmodell auf lokaler Ebene überschreiben
app/code/local/Mage/Customer/Model/Customer.php
. Gehen Sie dazu in die Zeile Nr. 843 (falls noch nicht überschrieben) oder gehen Sie in die Zeileif (strlen($password) && !Zend_Validate::is($password, 'StringLength', array(6))) { $errors[] = Mage::helper('customer')->__('The minimum password length is %s', 6); }
und fügen Sie den folgenden Code unter dem Block ein:Danach stimmen das Kennwort und das Bestätigungskennwort auf den Seiten "Kasse" und "Konto erstellen" überein.
Hoffe das könnte jemandem helfen.
quelle
Wenn immer noch niemand herausfinden kann, warum dies geschieht: Die Conlabz Useroptin-Erweiterung ( http://www.magentocommerce.com/magento-connect/newsletter-double-opt-in-for-customers.html ) kann dies verursachen Verhalten auch.
Update 1.1.0 dieser Erweiterung bietet 1.9-Kompatibilität
quelle
Ich habe eine Erweiterung, die die AccountController.php überschrieb und das gleiche Problem für Magento-Plattformen unter 1.9.1 hatte
Meine Lösung war;
quelle
Für mich weder gearbeitet
$this->getPasswordConfirmation()
noch$this->getConfirmation()
. Beide gaben eine leere Zeichenfolge zurück. Also habe ich direkt auf den POST-Parameter zugegriffen, in/app/code/core/Mage/Customer/Model/Customer.php
(ja, besser eine Kopie verwenden in/app/code/local
):quelle
Es liegt an dieser Änderung in 1.9.1 Update. Sie müssen Ihren Erweiterungscode aktualisieren. - Kundenpasswörter werden bei der Registrierung nicht mehr im Klartext gespeichert.
quelle
Ich habe das gleiche Problem wie beim Auschecken mit einer Drittanbietererweiterung, daher muss dieses Problem auftreten
Ich habe diesen Fehler behoben, indem ich die folgenden Schritte ausgeführt habe
Ich folge den obigen Schritten, um das Problem zu debuggen und zu lösen.
quelle
Meine Lösung war
quelle
Hallo Freunde, dieses Problem kann folgendermaßen gelöst werden:
Schritt 1: Öffnen Sie diese Datei.
/app/code/core/Mage/Customer/Model/Customer.php
Schritt 2: Suchen Sie diese Zeile in
Customer.php
$confirmation = $this->getPasswordConfirmation();
Schritt 3: Ersetzen Sie diese Zeile durch$confirmation = $this->getConfirmation();
Ihr Problem ist jetzt behoben.
quelle