Hallo Leute,
habe soeben ein Upgrade durchgeführt. Seither kann ich mich mit keinem Frontenduser mehr einloggen. Ich lande einfach auf einer Seite "cms/front_content.php?idart=" ohne weitere Artikelbezeichnung.
Das Loginformular springt einfach zurück auf "Eingabe", lässt mich aber nicht in den geschützten Bereich durch.
Cache, Verlauf usw. wurde alles schon mehrfach gelöscht.
Die Frontenduser und -gruppen existieren weiterhin im Backend.
Mir gehen die Ideen aus, weiß jemand Rat?
Gelöst: Frontendlogin mit Sonderzeichen in 4.8.7 fehlerhaft
Gelöst: Frontendlogin mit Sonderzeichen in 4.8.7 fehlerhaft
Zuletzt geändert von homtata am Di 19. Aug 2008, 15:24, insgesamt 2-mal geändert.
Problem eingegrenzt, aber nicht gelöst:
Ich habe ein verzahntes System FEUser & Newsletteranmeldung, daher sind meine FE Usernamen = E-Mail-Adresse.
Beim Abspeichern in die con_frontendusers wurden und werden die "@" vom System umkodiert in "%40".
In 4.8.6 wurden beim Überprüfen, ob der User existiert, diese Sonderzeichen wieder zurückkodiert, während dies in der 4.8.7 NICHT der Fall ist.
Weiß jemand, wo ich den Rückumwandlungsbefehl im System wieder eintragen kann?
Ich habe ein verzahntes System FEUser & Newsletteranmeldung, daher sind meine FE Usernamen = E-Mail-Adresse.
Beim Abspeichern in die con_frontendusers wurden und werden die "@" vom System umkodiert in "%40".
In 4.8.6 wurden beim Überprüfen, ob der User existiert, diese Sonderzeichen wieder zurückkodiert, während dies in der 4.8.7 NICHT der Fall ist.
Weiß jemand, wo ich den Rückumwandlungsbefehl im System wieder eintragen kann?
Okay, Fehler gefunden: er liegt in der /conlib/local.php
---Originalcode ----
--- ersetzen durch
Das fehlende "urlencode" aus der 4.8.6 führt zur NICHT-Rückumwandlung der Sonderzeichen.
---Originalcode ----
Code: Alles auswählen
$this->db->query(sprintf("SELECT idfrontenduser, password FROM %s WHERE username = '%s' AND idclient='$client' AND active='1'",
$this->fe_database_table,
Contenido_Security::escapeDB($username, $this->db) ));
Code: Alles auswählen
$this->db->query(sprintf("SELECT idfrontenduser, password FROM %s WHERE username = '%s' AND idclient='$client' AND active='1'",
$this->fe_database_table,
Contenido_Security::escapeDB(urlencode($username), $this->db) ));
-
- Beiträge: 472
- Registriert: Di 15. Apr 2008, 15:57
- Wohnort: Michelstadt
- Kontaktdaten: