Phil: htmlentities und nl2br zusammen verwenden

Hallo Zusammen,

Ich braucht kurz eure Hilfe. Ich lese mittels PHP einen Text aus MySQL aus. Dabei verwende ich nl2br für die Zeilenumbrücke. Nun würde ich auch gerne noch die Umlaute korrekt ausgeben (&uuml; usw). Dazu würde ich gerne htmlentities verwenden. Beide Funktionen zusammen bringe ich aber nicht zum laufen, da aufgrund von htmlentities die Zeilenumbrück <br /> als Text ausgegeben werden. Umgekehrt klappts auch nicht..

Jemand eine Idee wie ich beide verwenden kann?

Danke und Gruss, Philipp

  1. Hello,

    Ich braucht kurz eure Hilfe. Ich lese mittels PHP einen Text aus MySQL aus. Dabei verwende ich nl2br für die Zeilenumbrücke. Nun würde ich auch gerne noch die Umlaute korrekt ausgeben (&uuml; usw). Dazu würde ich gerne htmlentities verwenden. Beide Funktionen zusammen bringe ich aber nicht zum laufen, da aufgrund von htmlentities die Zeilenumbrück <br /> als Text ausgegeben werden. Umgekehrt klappts auch nicht..

    Wenn Du als Codierung für die Seite ISO-8859-1 verwendest, brauchst Du nur htmlspecialchars() einzusetzen, um die HTML-eigenen Zeichen zu maskieren bzw. zu umschreiben.

    Da nl2br() HTML-eigene Zeichen erzeugt, die hier NICHT umschrieben werden sollen (sie sollen ja ihre Wirkung im HTML-Dokument behalten), musst Du zuerst htmlspecialchars() und dann nl2br( anwenden.

    $html = nl2br(htmlspecialchars($rohdaten));

    Das sollte genügen.

    Liebe Grüße aus dem Cyberspace

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de