smilies mit str_replace

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • smilies mit str_replace

    Hi, wenn ich mit str_replace nach einer Zeichenfolge suche und sie ersetzen will, funktioniert das nur bei einer bestimmten Anzahl und ich weiß nicht warum.

    Wenn ich zum Beispiel :I in meinen Ticker schreibe,zerreist es die URL und der html Code wird nicht ausgeführt. Bekomme stattdessen die URL angezeigt
    und auch nicht vollständig. das <img src .... wird somit abgeschnitten.
    Wo ist das Problem?
    Wenn ich aber beispielsweise
    Code:
    :)
    eingebe, wird das alles korrekt ausgeführt.
    Keine Ahnung was ich falsch mache.

    PHP-Code:
    $text str_replace(':I'    ,    "<img src=\"/images/tickersmilies/zahn.gif\">    "$text);
    $text str_replace(':H'    ,    "<img src=\"/images/tickersmilies/cool.gif\">    "$text);
    $text str_replace('O:-)',     "<img src=\"/images/tickersmilies/engel.gif\">    "$text);
    $text str_replace(':$'    ,    "<img src=\"/images/tickersmilies/geld.gif\">    "$text);
    $text str_replace(':-*',     "<img src=\"/images/tickersmilies/kiss.gif\">    "$text);
    $text str_replace(':O'    ,     "<img src=\"/images/tickersmilies/oh.gif\">    "$text);
    $text str_replace(':-['    ,     "<img src=\"/images/tickersmilies/rotwerd.gif\">    "$text);
    $text str_replace(':%'    ,     "<img src=\"/images/tickersmilies/wut.gif\">    "$text);
    $text str_replace(':P'    ,     "<img src=\"/images/tickersmilies/zunge.gif\">    "$text);
    $text str_replace(';)'    ,     "<img src=\"/images/tickersmilies/zwinker.gif\">    "$text);
    $text str_replace(':)'    ,     "<img src=\"/images/tickersmilies/smile.gif\">    "$text);
    $text str_replace(':('    ,     "<img src=\"/images/tickersmilies/traurig.gif\">    "$text);   
    $text str_replace(':-x',     "<img src=\"/images/tickersmilies/sagnix.gif\">    "$text);
    $text str_replace(':/'    ,     "<img src=\"/images/tickersmilies/hm.gif\">    "$text);
    $text str_replace(':D'    ,     "<img src=\"/images/tickersmilies/grien.gif\">    "$text);
    $text str_replace(':`(',     "<img src=\"/images/tickersmilies/heul.gif\">    "$text); 
    Zuletzt geändert von Marcus-24-D; 20.02.2011, 11:04.

  • #2
    ah, ich hab das problem nach stundenlangem suchen gefunden..man man..

    :/ wird ja auch gleich mitgesucht.. ich muss den smilie also praktisch ans ende
    des codes setzen damit der nicht gesucht wird.

    Kommentar


    • #3
      Warum verwendest du nicht strtr() mit einem Array? Dann hast du solche Probleme nicht.

      Bei deinem <img->Tag fehlt übrigens das alt-Attribut.

      Kommentar


      • #4
        weiß ich auch ned..
        ich hatte vorher preg_replace mit nem array.
        war mir aber so am schnellsten zu schreiben. alles in einer zeile praktisch.

        Kommentar


        • #5
          Noch weniger schreiben müsstest du, wenn du ein Array verwendest. Dann brauchst du strtr() genau einmal aufrufen und nicht bei jeder Zeile.

          Kommentar

          Lädt...
          X