Usern das posten von Bildern verbieten

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
stoner31
Mitglied
Beiträge: 8
Registriert: 22.04.2007 20:05

Usern das posten von Bildern verbieten

Beitrag von stoner31 »

Mein Board ist heute von einem Spammer heimgesucht worden, der Porno-Bilder gepostet hat (und das trotz diverser anti-spam mods - muss wohl leider ein menschliches Wesen gewesen sein :(). Um das zu verhindern würde ich gern das Posten von Bildern für User untersagen, während ich als Admin aber gern weiter Bilder posten würde. Geht das irgendwie?

Ach ja, die Suche-Funktion habe ich ausgiebig genutzt, hab aber nichts gefunden, was mir weiterhilft.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

So kannst du den IMG BBcode für alle User mit Ausnahme der Administratoren sperren:
1.Aktion: Backup!

öffne includes/bbcode.php
finde

Code: Alles auswählen

function bbencode_first_pass($text, $uid)
{
füge danach ein:

Code: Alles auswählen

global $userdata;
finde

Code: Alles auswählen

// [img]image_url_here[/img] code..
	$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
ersetze durch das hier:

Code: Alles auswählen

// [img]image_url_here[/img] code..
if($userdata['user_level'] == ADMIN)
{
	$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
}
Bitte beachte, dass diese Änderung keinerlei Auswirkungen auf bisherige Posts hat. Bei allen Nachfolgenden Posts führt diese Änderung dazu, dass die IMG Codes so dargestellt werden, wie sie eingegeben wurden..
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.
stoner31
Mitglied
Beiträge: 8
Registriert: 22.04.2007 20:05

Beitrag von stoner31 »

Super, vielen Dank, werde ich ausprobieren. :)
Karsten A
Mitglied
Beiträge: 98
Registriert: 03.03.2005 21:07
Kontaktdaten:

Beitrag von Karsten A »

Hallo,

ich schließe mich mal gleich hier an.
Gibt es diese Einschränkung auch für verschiedene Gruppen.

Eine Gruppe soll Bilder einstellen können und alle anderen nicht.
Vielen Dank.

Gruß
Karsten
Benutzeravatar
SteveHH
Mitglied
Beiträge: 511
Registriert: 10.06.2006 11:47
Wohnort: Hamburg
Kontaktdaten:

Beitrag von SteveHH »

Hallo !

Code: Alles auswählen

// [img]image_url_here[/img] code.. 
if($userdata['user_level'] == ADMIN) 
{ 
   $text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text); 
} 
Dann musst Du m.E. den User-Level ersetzen. Man kann sicherlich auch mehrere User Level auf einmal angeben, wie das funktioniert, kann ich dir aber nicht genau sagen.

Gruß,

Steve
Crocodiles Hamburg - Eishockey mit HERZ
http://www.crocodiles-hamburg.de
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Das stimmt so leider nicht ganz. Der Userlevel unterscheidet nur zwischen normalem User, Admin und Moderator. Dementsprechend kann man auf diese Art und Weise zwischen normalen Usern, Moderatoren und Administratoren unterscheiden.
Das heißt aber nicht, dass eine Unterscheidung nach Gruppe ausgeschlossen wäre. Es ist lediglich ein wenig komplizierter und erfordert eine weitere Datenbankabfrage. Anstelle obiger Änderungen sind nun die folgenden notwendig:

1.Aktion: Backup!

öffne includes/bbcode.php
finde

Code: Alles auswählen

function bbencode_first_pass($text, $uid)
{
füge danach ein:

Code: Alles auswählen

global $userdata, $db;
finde

Code: Alles auswählen

// [img]image_url_here[/img] code..
	$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
ersetze durch das hier:

Code: Alles auswählen

// [img]image_url_here[/img] code..
$sql = "SELECT user_id FROM ".USER_GROUP_TABLE . " WHERE group_id IN (2) AND user_pending = 0 AND user_id = ".$userdata['user_id'];
if(!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR,'Konnte Gruppendaten nicht laden','',__LINE__, __FILE__, $sql);
}
if($db->sql_numrows($result) || $userdata['user_level'] == ADMIN )
{
	$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
}
Die 2 musst du durch die gewünschte Gruppen ID ersetzen, hier lässt sich auch eine ganze Liste an Gruppen definieren (dann jeweils durch Komma getrennt).
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.
Karsten A
Mitglied
Beiträge: 98
Registriert: 03.03.2005 21:07
Kontaktdaten:

Beitrag von Karsten A »

Guten Morgen,

danke gn#36.
Ich werde das mal testen.
Gibt es vielleicht auch eine Möglichkeit, die Rechte nur auf bestimmte Foren zu beschränken?
Benutzeravatar
yks
Mitglied
Beiträge: 1295
Registriert: 10.07.2004 02:31

Beitrag von yks »

hallo,

zwar brauche ich es derzeit nicht, aber auch von mir danke gn#38.
wäre das nicht auch etwas für das snippet-forum ?

viele grüße, yks
Mit subsilver2 macht es noch viel mehr Spaß ! :)
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Ja wäre es (ich hatte das sowieso vor nachdem ich die Frage gesehen hatte):
http://www.phpbb.de/viewtopic.php?p=884668#884668
;)
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.
Antworten

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