In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Feuerwolf
Mitglied
Beiträge: 456 Registriert: 11.09.2005 12:40
Wohnort: St Gallen
Beitrag
von Feuerwolf » 23.05.2007 12:45
Ich möchte gerne Folgende Regel einfügen, Ein jeder neu registrierter Benutzername muss zwischen dem zweiten und dem zweitletzten Zeichen min ein Leerzeichen enthalten. Um eine Illusion von Vor- und Nachnamen zu erschaffen. Wo muss ich wie den code dafür anpassen
*edit*
folgende Lösung hat funktioniert:
Code: Alles auswählen
if (substr_count (substr ($username, 2, (Strlen ($username) - 4)), ' ') <= 0)
{
return 'INVALID_CHARS';
}
Zuletzt geändert von
Feuerwolf am 27.08.2007 00:05, insgesamt 1-mal geändert.
Suche einen php Programmierer der in der NordOstschweiz wohnt.
Feuerwolf
Mitglied
Beiträge: 456 Registriert: 11.09.2005 12:40
Wohnort: St Gallen
Beitrag
von Feuerwolf » 24.05.2007 21:11
Kann mir jemand sagen, wo die Benutzernamen auf erlaubte Zeichen geprüft werden?
Suche einen php Programmierer der in der NordOstschweiz wohnt.
Emanuelle_1982
Mitglied
Beiträge: 535 Registriert: 06.03.2006 18:37
Wohnort: Nümbrecht & Siegen
Kontaktdaten:
Beitrag
von Emanuelle_1982 » 24.05.2007 21:30
ACP - Allgemein - Registrierung -
Erlaubte Zeichen in Benutzernamen:
Legt fest, welche Zeichen in Benutzernamen genutzt werden können. Füllzeichen sind: Leerzeichen, -, +, _, [ und ].
Feuerwolf
Mitglied
Beiträge: 456 Registriert: 11.09.2005 12:40
Wohnort: St Gallen
Beitrag
von Feuerwolf » 24.05.2007 21:39
ich suche den Bereich im php in dem die Benutzernamen geprüft werden, und ich dann eine neue bedingung hinzufügen kann.
->
Feuerwolf hat geschrieben: ...Benutzername muss zwischen dem zweiten und dem zweitletzten Zeichen min ein Leerzeichen enthalten
Suche einen php Programmierer der in der NordOstschweiz wohnt.
Emanuelle_1982
Mitglied
Beiträge: 535 Registriert: 06.03.2006 18:37
Wohnort: Nümbrecht & Siegen
Kontaktdaten:
Beitrag
von Emanuelle_1982 » 24.05.2007 21:47
includes/functions_user ->
function validate_username($username, $allowed_username = false)
hilft dir das schon weiter?
Feuerwolf
Mitglied
Beiträge: 456 Registriert: 11.09.2005 12:40
Wohnort: St Gallen
Beitrag
von Feuerwolf » 24.05.2007 22:59
Hat mir weitergeholfen
Hab folgenden code erstellt:
"
> " bezeichnet meinen Code
Code: Alles auswählen
function validate_string($string, $optional = false, $min = 0, $max = 0)
{
if (empty($string) && $optional)
{
return false;
}
if ($min && utf8_strlen(htmlspecialchars_decode($string)) < $min)
{
return 'TOO_SHORT';
}
else if ($max && utf8_strlen(htmlspecialchars_decode($string)) > $max)
{
return 'TOO_LONG';
}
> else if (strpos(((substr($username,2,(strlen($username))))-4),' ')<=0);
> {
> return 'INVALID_CHARS';
> }
return false;
}
leider erhalte ich als Resultat nur eine weisse Seite.
Suche einen php Programmierer der in der NordOstschweiz wohnt.
Emanuelle_1982
Mitglied
Beiträge: 535 Registriert: 06.03.2006 18:37
Wohnort: Nümbrecht & Siegen
Kontaktdaten:
Beitrag
von Emanuelle_1982 » 24.05.2007 23:20
also... am Rande: du solltest dir mal den Coding Guideline auf deutsch
http://olympuswiki.naderman.de/Deutsch: ... ode_Layout -> Abschnitt:
Benutzen Sie Leerzeichen zwischen den Ausdrücken/Tokens
soo... und 2 Fehler sind mir aufgefallen
eine if Bedingung endet nicht mit ;
Feuerwolf hat geschrieben: else if (strpos(((substr($username,2,(strlen($username))))-4),' ')<=0);
strpos($string, $suchstring, offset) -> bei dir ist der Suchstring -4, und das offset:
also... teile das mal in 2 bis 3 Zeilen auf, und lasse mal ein paar Klammerpaare weg - wird übersichtlicher
und sorry wenn ich die Lösung jetzt nicht poste - danach sollte es gehen
*nur nen test mit mini php Datei gemacht hat*
Liebe Grüße
Emma
Feuerwolf
Mitglied
Beiträge: 456 Registriert: 11.09.2005 12:40
Wohnort: St Gallen
Beitrag
von Feuerwolf » 25.05.2007 09:01
Also das mit den zwei bis 3 Zeilen, weis ich nicht, wie ich das am besten realisiere. Aber ich denke, dass ich zumindest das durcheinander etwas lüften konnte. Ich verstehe was ich da geschrieben habe mittlerweile schon besser.
Code: Alles auswählen
else if (substr_count (substr ($username, 2, (Strlen ($username) - 4)), ' ') <= 0)
{
return 'INVALID_CHARS';
}
aber es funktioniert noch immer nicht.
Suche einen php Programmierer der in der NordOstschweiz wohnt.
Emanuelle_1982
Mitglied
Beiträge: 535 Registriert: 06.03.2006 18:37
Wohnort: Nümbrecht & Siegen
Kontaktdaten:
Beitrag
von Emanuelle_1982 » 25.05.2007 09:24
Code: Alles auswählen
(substr_count(
substr(
$username, // nehme USERNAMEN
2, // usERNAME
(Strlen($username) - 4) // usERNAme strlen ist 8, -4 = 4, also ab ER 4 Zeichen ; -3 ??
), // also wird ERNA durchsucht
' ') // suche nach einem Leerzeichen
<= 0) // es dürfen nur weniger oder genau 0 sein? ; > 0 ?
Feuerwolf
Mitglied
Beiträge: 456 Registriert: 11.09.2005 12:40
Wohnort: St Gallen
Beitrag
von Feuerwolf » 25.05.2007 10:55
Emanuelle_1982 hat geschrieben: Code: Alles auswählen
...
' ') // suche nach einem Leerzeichen
<= 0) // es dürfen nur weniger oder genau 0 sein? ; > 0 ?
Wenn kein Leerzeichen enthalten ist soll er den INVALID_CHARS Fehler ausgeben
Suche einen php Programmierer der in der NordOstschweiz wohnt.