Registrierung - nur bestimmte Mails zulassen?

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.
Serpent
Mitglied
Beiträge: 84
Registriert: 06.08.2002 20:34
Wohnort: SW - Germany

Registrierung - nur bestimmte Mails zulassen?

Beitrag von Serpent »

Gibt es eine Möglichkeit nur eine Hand voll Emails für die Registrierung zuzulassen? Die Spam Bots nehmen so überhand und jeder Spam-Bot-Schutz den ich bisher installiert habe hält maximal 4 Wochen. Ich würde das gern so einstellen, dass man sich nur noch mit *@web.de, *@gmx.de, *@t-online.de und *@aol.com registrieren kann. Kann man das irgendwie machen?
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

Es sind dann nur noch emaill addressen von web, gmx, t-online und aol zugelassen. Bei anderen erscheint (nur beim registrieren) eine Fehlermeldung die dies (auf deutsch) sagt.

Finde in der include/usercp_register.php:

Code: Alles auswählen

	else if ( $mode == 'register' )
	{
		if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
		}
Danach füge ein:

Code: Alles auswählen

                 if ( !substr_count($email, '@web') && !substr_count($email, '@aol') && !substr_count($email, '@t-online') && !substr_count($email, '@gmx'))
                 {
                         $error = TRUE;
                         $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . 'Es sind nur Email-Addressen von web, gmx, t-online und aol erlaubt!';
                 }
(ungetestet)
Zuletzt geändert von nickvergessen am 24.04.2007 10:12, insgesamt 3-mal geändert.
kein Support per PN
Serpent
Mitglied
Beiträge: 84
Registriert: 06.08.2002 20:34
Wohnort: SW - Germany

Beitrag von Serpent »

Danke, ich werd dann mal mein Glück damit versuchen ;)
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

Wenns gefunzt(funktioniert) hat bitte nen post hinterlassen, damit ich es weiß ;)
kein Support per PN
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Ich weiß nicht ob die Oder-Verknüpfung an der Stelle wirklich sinnvoll ist, schließlich kann die Email-Adresse nicht zu allen 4 Anbietern gleichzeitig gehören, oder?
Statt

Code: Alles auswählen

if ( !substr_count($email, '@web') || !substr_count($email, '@aol') || !substr_count($email, '@t-online') || !substr_count($email, '@gmx')) 
vielleicht besser so:

Code: Alles auswählen

if( !preg_match("#@(web|aol|t\-online|gmx)#is", $email))
Alternativ alle || durch && ersetzen, dann sollte es zumindest logisch stimmen.

PS: Damit werden auch andere seriöse User mit z.b. Arcor, Lycos und freenet Adressen ausgesperrt, wenn du eine Whitelist machen willst, dann sollte sie länger werden, oder du verwendest die KB:antispam
Zuletzt geändert von gn#36 am 23.04.2007 21:28, insgesamt 1-mal geändert.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

gn#36 hat geschrieben:Alternativ alle || durch && ersetzen, dann sollte es zumindest logisch stimmen.
ok *edit* liegt daran weil ich zuerst mit dem gegenfall gearbeitet habe, also dass irgendwas passiert wenn es von gmx ... is
gn#36 hat geschrieben:

Code: Alles auswählen

if( !preg_match("#@(web|aol|t\-online|gmx)#is", $email))
kannst du mal die funktion von den # und dem is genau erklären oder nen Link geben?
kein Support per PN
Andi1111
Mitglied
Beiträge: 1301
Registriert: 26.05.2006 13:21
Wohnort: Berlin
Kontaktdaten:

Beitrag von Andi1111 »

Geht das auch anders rum? Ich würde gerne AOL Adressen verbieten da da keine Mails vom Forum Ankommen.
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

Dann versuchs damit

Code: Alles auswählen

                 if ( !substr_count($email, '@web') &&  !substr_count($email, '@t-online') && !substr_count($email, '@gmx'))
                 {
                         $error = TRUE;
                         $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . 'Es sind nur Email-Addressen von web, gmx und t-online erlaubt!';
                 }
kein Support per PN
Andi1111
Mitglied
Beiträge: 1301
Registriert: 26.05.2006 13:21
Wohnort: Berlin
Kontaktdaten:

Beitrag von Andi1111 »

danke, aber ich habe mich falsch ausgedrückt, ich will alle erlauben und nur aol sperren, oder gibt es inzwischen eine andere lösung. hier im forum habe ich zwar etliche beiträge zum thema aol mails gefunden aber keine lösung dafür das die da nicht ankommen.
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

Andi1111 hat geschrieben:danke, aber ich habe mich falsch ausgedrückt, ich will alle erlauben und nur aol sperren, oder gibt es inzwischen eine andere lösung. hier im forum habe ich zwar etliche beiträge zum thema aol mails gefunden aber keine lösung dafür das die da nicht ankommen.
:oops: ich seh grad das du ja nicht der threadstarter bist..
ja natürlich geht das auch, das ausschließlich aol ausgeschlossen wird:

Finde in der include/usercp_register.php:

Code: Alles auswählen

	else if ( $mode == 'register' )
	{
		if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
		}
Danach füge ein:

Code: Alles auswählen

                 if ( substr_count($email, '@aol'))
                 {
                         $error = TRUE;
                         $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . 'AOL-Email-Addressen sind nicht erlaubt!';
                 }
Zuletzt geändert von nickvergessen am 24.04.2007 10:11, insgesamt 3-mal geändert.
kein Support per PN
Antworten

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