Seite 1 von 2

BBCode/HTML - Tags aus der Signatur verbannen

Verfasst: 18.09.2007 22:47
von ingolenssen
Hallo!

Die User im Forum ballern Ihre Signaturen mit hässlichen, blinkenden Bannern zu. Das nervt.
Wie bekomme ich es hin, dass die Signatur nicht mit BBCode oder HTML umgestaltet werden kann (Text only)?

Viele Grüsse!

Verfasst: 18.09.2007 23:07
von Chalong
hi Ingo

In deinem Administrationsbereich kannst du unter

ACP ->
Konfiguration
-> in der Rubrik
Standard Benutzer- und Foreneinstellungen ->
Maximale Signaturlänge
Die maximale Anzahl an Zeichen, die ein Benutzer in seiner Signatur nutzen darf einstellen.

Das aber nur ist ein Anfang.

Verfasst: 18.09.2007 23:24
von gn#36
HTML sollte eigentlich sowieso nicht funktionieren.

Suche in der includes/usercp_register.php (ca. Zeile 455)

Code: Alles auswählen

if ( $signature != '' )
	{
Wenn du nur Bilder verbieten willst, dann danach einfach einfügen:

Code: Alles auswählen

if(strpos(strtolower($signature), '[img]') !== false)
{
$error = true;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . 'Bilder sind in der Signatur nicht erlaubt.';
}
Wenn du gleich alle bbcodes verbieten willst dann kannst du

Code: Alles auswählen

$allowbbcode = ( isset($HTTP_POST_VARS['allowbbcode']) ) ? ( ($HTTP_POST_VARS['allowbbcode']) ? TRUE : 0 ) : $board_config['allow_bbcode'];
und

Code: Alles auswählen

$allowbbcode = ( isset($HTTP_POST_VARS['allowbbcode']) ) ? ( ($HTTP_POST_VARS['allowbbcode']) ? TRUE : 0 ) : $userdata['user_allowbbcode'];
jeweils durch das hier ersetzen:

Code: Alles auswählen

$allowbbcode = 0;

Verfasst: 20.09.2007 12:11
von ingolenssen
Hallo!

Ich denke, dass es sinnvoll wäre, in der Signatur BBCode dann gleich ganz auszuknipsen. Also habe ich das da gemacht:
gn#36 hat geschrieben:Wenn du gleich alle bbcodes verbieten willst dann kannst du

Code: Alles auswählen

$allowbbcode = ( isset($HTTP_POST_VARS['allowbbcode']) ) ? ( ($HTTP_POST_VARS['allowbbcode']) ? TRUE : 0 ) : $board_config['allow_bbcode'];
und

Code: Alles auswählen

$allowbbcode = ( isset($HTTP_POST_VARS['allowbbcode']) ) ? ( ($HTTP_POST_VARS['allowbbcode']) ? TRUE : 0 ) : $userdata['user_allowbbcode'];
jeweils durch das hier ersetzen:

Code: Alles auswählen

$allowbbcode = false;
Anschliessend aber wird alles wie gehabt angezeigt (Links und Bilder in den Signaturen) und wenn ich versuche, beispielsweise mein eigenes Profil zu ändern, dann erscheint beim Speichern folgendes:

Code: Alles auswählen

Could not update users table

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' user_allow_viewonline = 1, user_notify = 0, user_notify_pm = 0, user_popup_pm =' at line 2

UPDATE phpbb_users SET user_email = 'administrator@xxxxxxxx.de', user_vorname = '', user_name = '', user_strasse = '', user_ort = '', user_land = '', user_telefon = '', user_icq = '', user_website = '', user_occ = '', user_from = '', user_interests = '', user_sig = '', user_sig_bbcode_uid = '', user_viewemail = 1, user_aim = '', user_yim = '', user_msnm = '', user_attachsig = 1, user_allowsmile = 1, user_allowhtml = 0, user_allowbbcode = , user_allow_viewonline = 1, user_notify = 0, user_notify_pm = 0, user_popup_pm = 1, user_timezone = 1, user_dateformat = 'j.n.y, G:i', user_lang = 'german', user_style = 1, user_active = 1, user_actkey = '' WHERE user_id = 2

Line : 530
File : usercp_register.php
Was mache ich falsch?

Verfasst: 20.09.2007 12:21
von Dr.Death
Hi,

das

Code: Alles auswählen

$allowbbcode = false;
führt zu einem Fehler beim Eintragen in die Datenbank.
Die Variable ist dann "leer". Die Datenbank möchte aber eine 0 oder 1 haben.

Ändere es in:

Code: Alles auswählen

$allowbbcode = 0;
um ;-)

Verfasst: 20.09.2007 12:32
von ingolenssen
Hallo und DANKE!

Dank Eurer Hilfe funktioniert es jetzt wie gewünscht!

Muss ich jetzt die Datenbank manuell nach Tags durchforsten und dann manuell ändern? Denn vorhandene Bilder und Links werden angezeigt, versucht man aber sein Profil zu überarbeiten, dann sind die Tags anschliessend wirkungslos.

:)

Verfasst: 20.09.2007 12:36
von Dr.Death
Ja, entweder Du suchst in allen Datenbank Einträgen nach diesen Sigantur Bildern oder
du löscht per SQL Befehl alle Signaturen und alle User müssten sich dann über die neue Prozedur eine neue anlegen.

Verfasst: 20.09.2007 12:39
von ingolenssen
Da lösche ich doch lieber die Signaturen :) .
ingolenssen ist happy, tausend Dank noch einmal, Thema (für mich) erledigt!!

Verfasst: 20.09.2007 13:01
von ingolenssen
Eine letzte Frage sei mir bitte doch noch gestattet:

Wie lösche ich alle Signaturen? TRUNCATE TABLE `user_sig` funktioniert nicht. Und dann ist da auch noch eine Tabelle namens user_sig_bbcode_uid, kann die auch weg?

Verfasst: 20.09.2007 13:25
von Dr.Death
Ähem, räusper --> KB:16 - Topic Bumping bitte beachten ;-)


Lösung: ( ich gehe davon aus das alle Deine Tabellen mit phpbb_ beginnen )

Code: Alles auswählen

UPDATE phpbb_users SET user_sig = ''
Damit werden "alle" Signaturen auf einen Schlag geleert.