Alt 22.06.2011, 16:02:20   #1 (permalink)
Erfahrener Benutzer
Benutzerbild von Papenburger

ID: 336361
Lose-Remote

Reg: 08.05.2006
Beiträge: 1.162
Papenburger
Standard Unerwünschte HTML-Tags + Attribute entfernen mit ausnahmen

Hallo,

ich möchte unerwünschte HTML-Tags sowie Attribute der Tags aus den Benutzereingaben entfernen. Dabei möchte ich bestimmt Tags bzw. Attribute erlauben. Kennt jemand eine Funktion die dies ermöglicht oder hat jemand etwas selbst geschriebenes, welche zuverlässig arbeitet?

strip_tags() hilft mir leider nicht weiter, da ich dann immernoch unerwünschte Attribute in den HTML-Tags habe.

Beispiel:
User postet folgenden HTML-Code:
HTML-Code:
1:
2:
3:
<P align="RIGHT">Test 1</P> <a target="_blank" href="http://www.test.de">Test.de</a> <CENTER>Zentriert</CENTER>
Erlaubte HTML-Tags:
P
a

Erlaubte Attribute:
href
target

Ergebnis wäre nun von oben folgendes:
HTML-Code:
1:
2:
3:
<P>Test 1</P> <a target="_blank" href="http://www.test.de">Test.de</a> Zentriert
Somit ist nun folgendes rausgeflogen:
align="RIGHT" im p-Tag
<CENTER>
</CENTER>


Natürlich muss, wenn das Tag nicht erlaubt ist, der Text erhalten bleiben welcher zwischen dem öffnenden und dem schließendem Tag steht, so wie im Beispiel!


Wer hat hier etwas passendes?


MFG
Papenburger
Papenburger ist offline   Mit Zitat antworten
Gesponsorte Links
Alt 22.06.2011, 16:12:46   #2 (permalink)
return void
Benutzerbild von ice-breaker

ID: 93995
Lose-Remote

ice-breaker eine Nachricht über ICQ schicken
Reg: 27.04.2006
Beiträge: 6.026
ice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehen
Standard

HTML Purifier
ein mehr als bewährtes Framework genau für den Einsatzzweck


"Die Wahrheit entgeht dem, der nicht mit beiden Augen sieht." -Orici
ice-breaker ist offline   Mit Zitat antworten
Alt 24.06.2011, 08:29:38   #3 (permalink)
Erfahrener Benutzer
Benutzerbild von Papenburger

ID: 336361
Lose-Remote

Reg: 08.05.2006
Beiträge: 1.162
Papenburger
Standard

Zitat:
Zitat von ice-breaker Beitrag anzeigen
HTML Purifier
ein mehr als bewährtes Framework genau für den Einsatzzweck
Ersteinmal vielen Dank dafür. Sicherlich würde dieses Framework mir weiterhelfen. Leider darf ich es aus verschiedenen Gründen nicht auf dem Server installieren. Hättest du evtl. noch einen anderen Lösungsvorschlag?


LG Papenburger
Papenburger ist offline Threadstarter   Mit Zitat antworten
Alt 24.06.2011, 10:11:02   #4 (permalink)
return void
Benutzerbild von ice-breaker

ID: 93995
Lose-Remote

ice-breaker eine Nachricht über ICQ schicken
Reg: 27.04.2006
Beiträge: 6.026
ice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehen
Standard

und die Gründe wären?
Es gibt soweit ich weiß aktuell keine andere sichere Lösung.


"Die Wahrheit entgeht dem, der nicht mit beiden Augen sieht." -Orici
ice-breaker ist offline   Mit Zitat antworten
Alt 24.06.2011, 15:36:05   #5 (permalink)
Multitalent
Benutzerbild von joschilein

ID: 9301
Lose-Remote

joschilein eine Nachricht über ICQ schicken
Reg: 05.05.2006
Beiträge: 1.414
joschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehen
Standard

Zitat:
Zitat von Papenburger Beitrag anzeigen
Hättest du evtl. noch einen anderen Lösungsvorschlag?
Da würde dann wohl noch helfen die Funktionsweise mit Hilfe von eigenen Regex-Konstrukten nachzubilden. Wenn z.B. preg_match_all() funktionsfähig ist, sollte das dann schon klappen können.


Heute schon gepixelt
joschilein ist offline   Mit Zitat antworten
Alt 24.06.2011, 16:17:44   #6 (permalink)
Shinichi Kudo
Benutzerbild von Black-Horse

ID: 82692
Lose-Remote

Reg: 03.05.2006
Beiträge: 326
Black-Horse befindet sich auf einem aufstrebenden Ast
Standard

die aufgabe einfach teilen
erst mit strip_tags alles rauswerfen und dann mit dem simple_html_dom den dom entsprehend manipulieren und ausgeben - oder eben selbst durchhangeln
Black-Horse ist offline   Mit Zitat antworten
Alt 24.06.2011, 19:03:26   #7 (permalink)
return void
Benutzerbild von ice-breaker

ID: 93995
Lose-Remote

ice-breaker eine Nachricht über ICQ schicken
Reg: 27.04.2006
Beiträge: 6.026
ice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehen
Standard

der HtmlPurifier verfolgt nicht ohne Grund einen Whitelist-Ansatz (es wird der DOM anhand erlaubter Tags neu aufgebaut), denn bei allen HTML-Filtern davor die auf einem Blacklist-Ansatz beruhten gab es zu viele Möglichkeiten doch einmal böses HTML durchzuschleußen.


"Die Wahrheit entgeht dem, der nicht mit beiden Augen sieht." -Orici
ice-breaker ist offline   Mit Zitat antworten
Antwort

Gesponsorte Links

Anzeige


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Meta Tags swissfunky Scripts & Software 2 12.03.2011 16:36:05
mod security2 ausnahmen definieren Bububoomt Webhosting 4 07.07.2010 15:28:39
[RegExp] - preg_match(_all) - HTML-Tags bearbeiten k212198 Programmierung 3 14.10.2006 11:27:10
Tags für Bilder RoSi Verbesserungsvorschläge 10 17.05.2006 09:38:59


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:45:09 Uhr.