Frage zu preg_replace

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Seether
Mitglied
Beiträge: 1446
Registriert: 10.10.2002 23:42

Frage zu preg_replace

Beitrag von Seether »

Da der Thread im Modforum schon zum 3. Mal untergegangen ist hier mein kleines Anliegen.
Habe es jetzt geschafft, dass der Admin Links und Bilder in der Signatur posten darf, die normalen User aber nicht.

Code: Alles auswählen

$user_sig = preg_replace("#\[img:$user_sig_bbcode_uid\](.*?)\[/img:$user_sig_bbcode_uid\]#si",'', $user_sig); // disable img tag 
Diese Zeile ersetzt die Bilddateien......Das Problem ist nur, dass statt dem Bild jetzt immer eine zusätzliche Zeile (ohne Inhalt) in der Signatur vorhanden ist.

Wer weiß rat?

S.
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

Im Regelfall wird der User vor und nach dem Bild einen Zeilenwechsel einfügen:

Code: Alles auswählen

bla bla
[img]http://www.mypage.de/meinbild.jpg[/img]
bla bla
Daher bleibt auch der Zeilenwechsel übrig. Du müsstest evtl. noch den auf den IMG-Tag folgenden Zeilenwechsel entfernen, was aber auch zu unerwünschten Nebeneffekten führen kann.

Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Seether
Mitglied
Beiträge: 1446
Registriert: 10.10.2002 23:42

Beitrag von Seether »

Hmmm ja so was habe ich mir schon fast gedacht...
Angenommen das Bild wäre das letzte in der Signatur, danach käme nur noch ein Zeilenwechsel. Kann ich den nicht mit whitespace o.ä. abfangen?


S.
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

Versuch's mal mit trim()

Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Antworten

Zurück zu „Coding & Technik“