tutorials.de Buch-Aktion 05/2012
Like Tree4Danke
  • 1 Beitrag von Yaslaw
  • 1 Beitrag von Yaslaw
  • 1 Beitrag von Napofis
  • 1 Beitrag von ComFreek
ERLEDIGT
NEIN
ANTWORTEN
11
ZUGRIFFE
329
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von VanHellsehn
    VanHellsehn VanHellsehn ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    299
    Hi Leute,
    Ich wollte in meiner Kommentar-Funktion gewissen HTML-Tags mit bestimmten Attributen erlauben. Also so wie Wordpress es macht.

    Zum Beispiel mit Hilfe so eines Arrays:
    PHP-Code:
    $array = array(
        
    '<b>',
        
    '<a href="" title="">',
        
    '<pre rel="">'
    ); 
    Nur bin ich mir noch nicht ganz sicher wie ich das ganze Realisieren soll. Ich denke man macht das ganze wie immer mit Regulären Ausdrücken, aber ich weiß nicht genau wie ich das damit umsetzten soll. Ich kann mit Regulären Ausdrücken umgehen doch fehlt mir die Idee.

    Jemand eine Idee oder Hilfe?

    PS: http://de.php.net/manual/en/function...tags.php#82180 hier ist es ja so ähnlich wie ich es möchte nur das er bestimmte Attribute löscht und diese Attribute sind nicht Tag spezifisch.
     
    =)

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Ab PHP5.3 kannst du mit preg_filter arbeiten
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  3. #3
    Avatar von VanHellsehn
    VanHellsehn VanHellsehn ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    299
    Ich verstehe noch nicht ganz wie mich diese Funktion weiterbringen soll
     
    =)

  4. #4
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    äh - stimmt.

    Du hast ja den "verkehrten" Ansatz.

    Du könntest diesen Test machen
    1) Eine kopie des Textes ziehen und mit dieser testen
    2) mittel preg_replace alle erlaubten Funde durch "" ersetzen (Bei preg_replace kannst du ein Array mit Patterns mitgeben)
    3) mittels preg_match prüfen ob noch Tags <tag>value</tag> gefunden werden. Wenn ja-> Text enthält ungültige Tags.
    VanHellsehn bedankt sich. 
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  5. #5
    Avatar von VanHellsehn
    VanHellsehn VanHellsehn ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    299
    Das ist ein guter Ansatz doch möchte ich nicht erlaubte Attribute und Tags einfach ohne Meldung entfernen.
    Eine einfache Prüfung hatte ich auch schon im Netz gefunden.
     
    =)

  6. #6
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Dann ändere das ganze ein wenig

    1) mittels preg_replace alle erlaubten Funde durch ein label fixen ersetzen (Bei preg_replace kannst du ein Array mit Patterns mitgeben)

    2) mittels preg_repalce alle nicht gelabelten Tags entfernen

    3) den Leabel wieder entfernen

    bsp.
    HTML-Code:
    <!-- erlaubt: <b> und <i> -->
    <!-- Original -->
    Hallo <b>Welt</b>, <i>ich darf</i> <href = "link">nicht hier sein</href>
    
    <!-- Nach Schritt 1 ->
    Hallo #b>Welt#/b>, #i>ich darf#/i> <href = "link">nicht hier sein</href>
    
    <!-- Nach Schritt 2 ->
    Hallo #b>Welt#/b>, #i>ich darf#/i> nicht hier sein
    
    <!-- Nach Schritt 3 ->
    Hallo <b>Welt</b>, <i>ich darf</i> <href = "link">nicht hier sein</href>
    VanHellsehn bedankt sich. 
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  7. #7
    Avatar von VanHellsehn
    VanHellsehn VanHellsehn ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    299
    Das erreiche ich mit strip_tags(); ja auch nur mein größtes Problem ist es bestimmt Attribute bei bestimmten Elementen zu erlaube und bei anderen wiederum nicht.
     
    =)

  8. #8
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Das Attribute elrauben und mal nicht ist eine Aufgabe für reguläre Ausdrücke
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  9. #9
    Avatar von VanHellsehn
    VanHellsehn VanHellsehn ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    299
    Ja aber wie. Das ist ja gerade mein Problem
     
    =)

  10. #10
    Avatar von Napofis
    Napofis Napofis ist offline require 'brain.php';
    Registriert seit
    Jun 2007
    Ort
    Bayern
    Beiträge
    587
    Wie wäre damit - du parst dein Dokument mit einem XML-Parser und durchläufst die Baumstruktur Rekursiv. Dann durchläufst die Attribute und alle die nicht von dir erlaubt sind löschst du raus. Wenn du fertig bist generierst du den Output neu über den Parser.

    Für jedes Element was gelöscht wurde kannst du ja eine kleine Meldung am Ende ausgeben.
    VanHellsehn bedankt sich. 

  11. #11
    Avatar von ComFreek
    ComFreek ComFreek ist gerade online [x] Let it be logic!
    tutorials.de Moderator
    Registriert seit
    Jun 2009
    Beiträge
    2.364
    Blog-Einträge
    4
    Vielleicht hilft dir auch HTML Purifier.
    VanHellsehn bedankt sich. 
    mfg ComFreek

    Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
    Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
    [PHP] Überprüfen, ob Website erreichbarSicherheit in PHP-Codes schaffenGoogle Chrome-Extension für tutorials.dejson_compress()

  12. #12
    Avatar von VanHellsehn
    VanHellsehn VanHellsehn ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    299
    Den hatte ich auch schon zur Hand aber er war mir zu mächtig.
    Ich habe vorerst auf die Funktion verzichtet werde mir jetzt nochmal genau überlegen ob ich HTML nutze oder doch wie immer BB-Codes.
     
    =)

Ähnliche Themen

  1. Antworten: 6
    Letzter Beitrag: 08.07.10, 11:16
  2. Antworten: 7
    Letzter Beitrag: 21.11.07, 12:29
  3. htaccess Schutz, aber bestimmten Skripten Zugriff erlauben
    Von budking im Forum Hosting & Webserver
    Antworten: 2
    Letzter Beitrag: 13.02.05, 16:29
  4. nur bestimmte Dateitypen erlauben!
    Von neopayne im Forum PHP
    Antworten: 7
    Letzter Beitrag: 24.12.04, 17:27
  5. streachen von bestimmten zellen um bestimmte werte
    Von KampfY im Forum HTML & XHTML
    Antworten: 1
    Letzter Beitrag: 03.09.01, 12:42

Stichworte