Hallo,
ich habe ein phpBB 2 konvertiert zum Testen, dabei wurden Benutzernamen geändert.
Alle Benutzer die ein Leerzeichen im Namen hatten müssen sich nun mit Unterstrich anmelden. Da ich aber möchte, dass sich jeder wie bisher anmelden kann, müsste der eingegebene Username vor dem Abgleich mit der Datenbank auch umgewandelt werden.
Der Unterstrich alleine wäre ja nicht das Problem, jedoch gibt es noch einige (viele) User mit Umlauten, die auch Probleme bekommen könnten, daher müsste die Umsetzung ja wie im Konverter funktionieren. Leider bekomme ich das nicht hin.
Versucht habe ich schon diverse der im Konverter auftauchenden UTF-Funktionen, ohne Erfolg. Eingesetzt habe ich die Funktionen in der includes/auth/auth_db.php in der Funktion login_db direkt unterhalb der Globalisierung von $db und $config.
Hat jemand eine Idee warum das nicht geht?
Welche Stelle wäre sinnvoller dafür?
Wie werden die Usernamen geändert beim Konvertieren?
Dank im Vorraus
Thomas
username_clean Änderung der Usernamen
Die Konvertierung erstellt ein neues Feld username_clean - das alte Benutzernamen ist aber weiterhin vorhanden und wird auch für die Anmeldung verwendet.
Gruß, Philipp
Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Was kommt den für eine Fehlermeldung? Vermutlich konnte nur das Passwort nicht konvertiert werden und muss neu angefordert werden.
Gruß, Philipp
Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Hmmmm,
Eben keine Fehlermeldung.
Stelle grade fest, das ich die Fehlerquelle bin, könnte aber dennoch einen Tip gebrauchen.
Dadurch, dass vor dem PHPBB das Forum auf YaBB SE lief, habe ich in dem Sourceforum ein zusätzliches Feld "loginname". Dies hatten wir beibehalten, da eben das Login nicht mit dem angezeigten Usernamen übereinstimmen muss. Wenn die beiden sich unterscheiden, kann man nicht versuchen mit dem Usernamen und einem erratenem Passwort einen Account zu missbrauchen.
Ist folgende Änderung richtig ?
In der Userstabelle das Feld loginname hinzufügen
convert_phpbb20.php öffnen
suche folgende Zeile:
array('username', 'users.username', 'phpbb_set_default_encoding'), // recode to utf8 with default lang
davor füge ein:
array('loginname', 'users.loginname', 'phpbb_set_default_encoding'), // recode to utf8 with default lang
Wenn das soweit richtig ist, dann ist noch die Frage an welcher Stelle ich das Loginscript ändern sollte.
In der auth_db.php geht denke ich, aber das sollte man eigentlich schon ändern bevor die Authmethode differenziert wird.
Hast du da noch einen Tip für mich?
Eben keine Fehlermeldung.
Stelle grade fest, das ich die Fehlerquelle bin, könnte aber dennoch einen Tip gebrauchen.
Dadurch, dass vor dem PHPBB das Forum auf YaBB SE lief, habe ich in dem Sourceforum ein zusätzliches Feld "loginname". Dies hatten wir beibehalten, da eben das Login nicht mit dem angezeigten Usernamen übereinstimmen muss. Wenn die beiden sich unterscheiden, kann man nicht versuchen mit dem Usernamen und einem erratenem Passwort einen Account zu missbrauchen.
Ist folgende Änderung richtig ?
In der Userstabelle das Feld loginname hinzufügen
convert_phpbb20.php öffnen
suche folgende Zeile:
array('username', 'users.username', 'phpbb_set_default_encoding'), // recode to utf8 with default lang
davor füge ein:
array('loginname', 'users.loginname', 'phpbb_set_default_encoding'), // recode to utf8 with default lang
Wenn das soweit richtig ist, dann ist noch die Frage an welcher Stelle ich das Loginscript ändern sollte.
In der auth_db.php geht denke ich, aber das sollte man eigentlich schon ändern bevor die Authmethode differenziert wird.
Hast du da noch einen Tip für mich?