Kieselnator: Funktion: Html-Attribute wegschneiden

Hallo!

Habe etwas von einer Funktion gehört, die alle Html-Attribute wie <b>, <i>, usw. wegschneidet...

Wisst ihr, wie sie heißt??
D
Danke,. Kiesel

  1. Habe etwas von einer Funktion gehört, die alle Html-Attribute wie <b>, <i>, usw. wegschneidet...

    Wisst ihr, wie sie heißt??

    Sie heisst nicht strip_attributes, sondern strip_tags().
    Das sollte dich etwas über Begriffe erleuchten.

    mfg Beat

    --
    ><o(((°>           ><o(((°>
       <°)))o><                     ><o(((°>o
    Der Valigator leibt diese Fische
    1. @@Beat:

      nuqneH

      Sie heisst nicht strip_attributes, sondern strip_tags().
      Das sollte dich etwas über Begriffe erleuchten.

      Noch mehr erleuchtet [Meiert].

      Qapla'

      --
      Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
      (Mark Twain)
  2. Hello,

    Habe etwas von einer Funktion gehört, die alle Html-Attribute wie <b>, <i>, usw. wegschneidet...
    Wisst ihr, wie sie heißt??

    Meinst Du die Funktion strip_tags()?
    http://de2.php.net/manual/en/function.strip-tags.php

    Diese findest Du unter "Stringfunktionen"
    http://de2.php.net/manual/en/ref.strings.php

    Vielleicht solltest Du Dir mal eine Liste aller verfügbaren Funktionen erstellen und dann schauen, welche Du davon schon kennst, was sie machen, und ob Du sie überhaupt gebrauchen kannst?

      
    <?php    ### get_defined.php ###  
      echo "<pre>";  
      
      $_functions = get_defined_functions();  
      asort($_functions["internal"]);  
      asort($_functions["user"]);  
      echo "<h3>Funktionen</h3>\r\n";  
      echo htmlspecialchars(print_r($_functions,1));  
      echo "<br>\nAnzahl der internen Funktionen: ".count($_functions["internal"])."<br>\n";  
      
      $_classes = get_declared_classes();  
      asort($_classes);  
      echo "<h3>Klassen</h3>\r\n";  
      echo htmlspecialchars(print_r($_classes,1));  
      echo "<br>\nAnzahl der deklarierten Klassen: ".count($_classes)."<br>\n";  
      
      echo "<h3>Konstanten</h3>\r\n";  
      
      $_constants = get_defined_constants();  
      ksort($_constants);  
      echo htmlspecialchars(print_r($_constants,1));  
      echo "<br>\nAnzahl der deklarierten Konstanten: ".count($_constants)."<br>\n";  
      
      echo "</pre>";  
    ?>  
    
    

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
  3. Hi!

    Habe etwas von einer Funktion gehört, die alle Html-Attribute wie <b>, <i>, usw. wegschneidet...
    Wisst ihr, wie sie heißt??

    Es gibt strip_tags(), die auch alles andere entfernt, was wie ein HTML-Tag aussieht.

    Bei diesem Vorhaben musst du dir dir Frage nach dem Grund gefallen lassen? Geht es darum, HTML-Injection zu verhindern? Dann brauchst du htmlspecialchars(). Das brauchst du auch für die von strip_tags() übriggelassenen <, > und &. Wenn du also gleich htmlspecialchars() verwendest, bist du für das HTML-Umfeld gut gerüstet, ohne dass Kollateralschäden entstehen (und Unfug kann man auch ohne HTML-Tags noch genug anstellen).

    Allgemeine Literatur zum Thema: http://wiki.selfhtml.org/wiki/Artikel:Kontextwechsel

    Lo!

    1. Hallo,

      Es gibt strip_tags(), die auch alles andere entfernt, was wie ein HTML-Tag aussieht.

      ja, so würde beispielsweise der Satz
       "Es soll gelten: i<12 und i>4"
      verstümmelt zu
       "Es soll gelten: i4"
      weil stript_tags() alles als Tag ansieht, was zwischen '<' und '>' steht, und diesen Abschnitt mitsamt den Begrenzerzeichen ausschneidet.

      Dann brauchst du htmlspecialchars().

      So long,
       Martin

      --
      Wieso heißen die Dinger eigentlich Anrufbeantworter? Eigentlich sind es doch nur Anrufanhörer.
      Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(