Aktív témák

  • TotGe

    csendes tag

    válasz biker #14 üzenetére

    A quote-ok kiszedése legegyszerűbben a következőképpen működik:

    $str = ereg_replace( ''[''']'', '''', $str );

    Valszeg a smiley sem egyszerűen '':)'', mert gondolom a hosszab smileykat is ugyanúgy cseréli: '':[)]+'' De ha ilyesmiket akarsz tudni, akkor tudom ajánlani a PHP Manual hozzászólásait, ami nem csak heppből van ott, pontosan az ilyen gyakorta előforduló problémákra jelent gyógyírt:

    http://www.php.net/manual/en/function.ereg-replace.php

    Visszatérve az eredeti kérdésre, a tördeléssel a következő a probléma: a textarea tartalma direkt formázással kerül át MySQL-be, tehát nem HTML tagekkel lesz tördelve. Erre két megoldás van, az egyik ha eleve eltárolásnál, a másik ha kiiratásnál beteszel egy

    $str = nl2br( $str );

    függvényt, ami a new line-t brake-ké konvertálja. Ha vissza akarsz kapni egy tagek nélküli stringet, akkor pedig strip_tags() függvényt kell használni, ez visszacsinálja a fentit.

    A strip_tags() fv.-t amúgy jó ha nem felejted el a tárolásnál sem használni, különben érhet olyan meglepetés például, hogy valaki a következő üzenetet írja :
    <FONT SIZE=7>bla-bla</FONT> és egy ótvar nagy felirat jelenik meg a fórumodban.

    A quote-okról még annyit, hogy lehet, hogy egyes emberek idézgetni akarnak, de egy összetettebb fórum nagyon sok helyen hibázhat ha idézőjelet kap, ezért a legjobb egyből kiszedni mindet. Vagy nagyon sok munka lesz a konvertálgatásokkal. Remélem hasznát veszed a fentieknek.

Aktív témák