Confirmation-Code-Eingabe vereinfachen

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
TK
Mitglied
Beiträge: 70
Registriert: 28.11.2004 14:08
Wohnort: Bremen
Kontaktdaten:

Confirmation-Code-Eingabe vereinfachen

Beitrag von TK »

Hallo,

Ich will die Eingabe des Confirmation-Codes etwas "idiotensicherer" machen, indem etwaige Kleinbuchstaben bei der Eingabe automatisch in Großbuchstaben umgewandelt werden sollen und die 0 (Null) in ein O (großes Otto) verwandelt werden soll. Es scheint immer wieder Leute zu geben, die den Hinweistext dazu nicht verstehen (können?).
Es werden vom PNG-Skript ja eh keine Kleinbuchstaben oder die Null erzeugt; insofern würde ich da auch kein erhöhtes Risiko durch diese Maßnahme sehen...

Ich hatte schon etwas versucht mit str_replace("0","O",$confirm_id) und strtoupper(), aber anscheinend war es falsch eingesetzt oder ich habe eine andere Stelle übersehen, wo es ebenfalls hätte eingesetzt werden müssen... zumindest hat es nicht geklappt :(

Also, wie und an welchen Stellen muss meine Idee korrekt umgesetzt werden? *sich doof vorkommt, weil's nicht hinkriegt :-?*
Meine Signatur war zu groß und wurde deshalb gelöscht - Siehe phpBB.de-Knigge
Benutzeravatar
TK
Mitglied
Beiträge: 70
Registriert: 28.11.2004 14:08
Wohnort: Bremen
Kontaktdaten:

Beitrag von TK »

Ich antworte mir jetzt mal selbst ;), weil ich die Lösung selber gefunden habe und sich vielleicht auch andere dafür interessieren:

Code: Alles auswählen

--- Öffne includes/usercp_register.php ---

--- Finde: ---

if ($row['code'] != $confirm_code)

--- Füge DAVOR ein: ---

$confirm_code = strtr($confirm_code, "abcdefghijklmnopqrstuvwxyz0", "ABCDEFGHIJKLMNOPQRSTUVWXYZO");

--- Speichern und hochladen ---
Damit werden bei der Confirmationcode-Eingabe eventuell eingegebene Kleinbuchstaben in Großbuchstaben umgewandelt und eine 0 Null in ein großes O; dies funktioniert, da bei der Code-Grafikerzeugung eh schon nur Großbuchstaben und/oder die Zahlen 1-9 (nicht aber 0) erzeugt werden.
Die Änderung hat den Vorteil, dass die User sich nicht mehr an die Vorgabe halten müssen, auf Klein-/Großschreibung zu achten oder auf die Null mit Schrägstrich (wer will, kann diesen Hinweis dann auch in der language/lang_{sprache}/lang_main.php dementsprechend abändern)


P.S.: Warum es vorher nicht geklappt hat: Ich hatte einen blöden Logikfehler begangen, und strtr() auf $confirm_id angewandt statt auf $confirm_code, wie es richtig wäre :roll:
Meine Signatur war zu groß und wurde deshalb gelöscht - Siehe phpBB.de-Knigge
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“