Projekt

Allgemein

Aktionen

GX-Bug #42593

geschlossen

Kunderegistrierung: Umlaute im Lokalteil von Emailadressen werfen einen Fehler mit Checkout Abbruch

Von Wilken Haase vor fast 10 Jahren hinzugefügt. Vor fast 9 Jahren aktualisiert.

Status:
Erledigt
Priorität:
Normal
Zugewiesen an:
-
Kategorie:
Core
Zielversion:
% erledigt:

100%

Geschätzter Aufwand:
Steps to reproduce:
Betroffene Versionen:
2.3.1.0, 2.3.1.0 beta1, 2.3.1.0 beta2, 2.3.1.1, 2.3.1.2, 2.3.1.3, 2.3.1.4, 2.3.1.5, 2.3.1.6, 2.3.1.7, 2.3.2.0, 2.3.2.0 beta1, 2.3.2.1
Release Notes Langtext:

Beschreibung

Wenn ein Kudne während der Registrierung im Checkout einen Umlaut oder ein ß in die Mailadresse eingibt und weiter klickt bekommt er einen ungefangenen Fehler auf den Schirm und kommt nicht weiter

FATAL ERROR(1): "Uncaught exception 'UnexpectedValueException' with message '$p_email is not a valid e-mail address' in /var/www/web1/html/gambio-shop.de/shop1/GXEngine/Classes/CoreServices/CustomerValueObjects/CustomerEmail.inc.php:53
Stack trace:
#0 /var/www/web1/html/gambio-shop.de/shop1/system/core/MainFactory.inc.php(289) : eval()'d code(1): CustomerEmail->__construct('te??t@test.de')
#1 /var/www/web1/html/gambio-shop.de/shop1/system/core/MainFactory.inc.php(289): eval()
#2 /var/www/web1/html/gambio-shop.de/shop1/system/core/MainFactory.inc.php(190): MainFactory::create_object('CustomerEmail', Array)
#3 /var/www/web1/html/gambio-shop.de/shop1/GXEngine/Classes/CoreServices/Customers/CustomerInputValidator.inc.php(311): MainFactory::create('CustomerEmail', 'te??t@test.de')
#4 /var/www/web1/html/gambio-shop.de/shop1/GXEngine/Classes/CoreServices/Customers/CustomerInputValidator.inc.php(272): CustomerInputValidator->validateEmailExists('te??t@test.de')
#5 /var/www/web1/html/gambio-shop.de/shop1/GXEngine/Classes/CoreServices/"

Checkliste 0/0


Zugehörige Tickets

Beziehung mit GX-Entwicklung - GX-Bug #40296: Automatisches Umwandeln von E-Mail Adressen und Domains mit Umlauten in PunyCodeErledigtMoritz Bunjes

Aktionen
Aktionen #4

Von Tobias Schindler vor fast 10 Jahren aktualisiert

  • Status wurde von In Prüfung zu Anerkannt geändert

Die PHP-interne Funktion "filter_vars()" akzeptiert keine Umlaute oder Sonderzeichen (wie ß) im Local-Part der E-Mail Adresse. Deshalb wird eine Exception geworden. Man muss sich jetzt überlegen, ob die Exception gefangen werden soll und man eine sinnvolle Fehlermeldung anzeigt (z.B. invalide E-Mail Adresse) oder, wenn man E-Mail Adressen mit solchen Umlauten + Sonderzeichen als valide anerkennt, einen Ersatz für die Funktion "filter_vars()" schaffen.
Die Überprüfung findet im Konstruktor der Klasse CustomerEmail, in Zeile 51 statt.

Aktionen #19

Von Daniel Wu vor mehr als 9 Jahren aktualisiert

  • Status wurde von Gemeldet zu In Prüfung geändert
  • Zugewiesen an wurde auf Tobias Schindler gesetzt

Lösung: Exception beim Anlegen einer Emailadresse mit Umlauten, sollte abgefangen und benutzerfreundlich gehandlet werden.

Aktionen