kostenloser Webspace werbefrei: lima-city


Smilies (:biggrin:) in html (<img src=\"images/smilies/biggrin.gif\">) umwandeln

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    dussel

    Kostenloser Webspace von dussel

    dussel hat kostenlosen Webspace.

    Wenn ich mit diesem script:

    $array_1 = array(":&biggrin:",":&cool:",":&cry:",":&eek:",":&evil:",":&eye:",":&frown:",":&love:",":&smile:",":&wink:");
    //ohne & nur damit sie jetzt nicht umgwandelt werden
    $array_2 = array("<img src=\"images/smilies/biggrin.gif\">","<img src=\"images/smilies/cool.gif\">","<img src=\"images/smilies/cry.gif\">","<img src=\"images/smilies/eek.gif\">","<img src=\"images/smilies/evil.gif\">","<img src=\"images/smilies/eye.gif\">","<img src=\"images/smilies/frown.gif\">","<img src=\"images/smilies/love.gif\">","<img src=\"images/smilies/smile.gif\">","<img src=\"images/smilies/wink.gif\">");
    for($x=0;$x<10;$x++){
      $gcomment = str_replace($array_1[$x],$array_2[$x],$gcomment4);
    }


    versuche die smilies umzuwandeln, wird nur das smilie: wink umgewandelt, jedoch die andern nicht!

    Bitte helft mir!

    Danke

    Beitrag ge?ndert am 9.10.2005 10:04 von dussel
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. <?
      function smilie ($text)
        {
          
          $text = stripslashes($text); // ?berfl?ssige Backslahes entfernen
          $text = htmlentities($text); //HTML-Code entfernen 
          $text = nl2br ($text);       //Zeilenumbruecheumwandeln 
        
          $muster    = array ();
          $ersetzten = array ();
    
            //SMILIES aus Datenbank lesen
          $sql    = "SELECT code,name FROM smilies";
          $result = mysql_query($sql);
    
          while($row = mysql_fetch_assoc($result))
            { 
              $muster[]   = "/".addcslashes(addcslashes($row['code'], "("), ")" )."/i";
              $ersetzen[] = "<img src=\"images/smilies/".$row["name"].".gif\" />";                  
            }                  
      
          $text = preg_replace ($muster, $ersetzen, $text);
        
        }
    ?>


    Also meine Variante ist eigentlich so ?hnlich wie dein. Die Smilies werden halt nur aus einer Datenbank gelesen...

    Bei deiner Variante ist glaube ich der Fehler, dass du bei array() normale Anf?hrungszeichen f?r src verwendest. Probier es mal mit dem Hochkomma (hei?t doch so oder? ^^)!

    So:

    $array_1 = array(":&biggrin:",":&cool:",":&cry:",":&eek:",":&evil:",":&eye:",":&frown:",":&love:",":&smile:",":&wink:");
    
    //ohne & nur damit sie jetzt nicht umgwandelt werden
    
    $array_2 = array("<img src='images/smilies/biggrin.gif'>","<img src='images/smilies/cool.gif'>","<img src='images/smilies/cry.gif'>","<img src='images/smilies/eek.gif'>","<img src='images/smilies/evil.gif>","<img src='images/smilies/eye.gif'>","<img src='images/smilies/frown.gif'>","<img src='images/smilies/love.gif'>","<img src='images/smilies/smile.gif'>","<img src='images/smilies/wink.gif'>");
    
    for($x=0;$x<10;$x++){
    
      $gcomment = str_replace($array_1[$x],$array_2[$x],$gcomment4);
    
    }


    Und ist die 4 bei $gcomment4 gewollt? Wenn nich muss die auch noch weg.^^

    Edit: Ahhh jetzt sehe ich erst, dass du deine " escapest, aber ich glaube das geht bei einem Array nicht sondern nur bei Strings. Lima hat die mal wieder Entfernt....Das is auch nen Bug den man mal beheben k?nnte...

    Beitrag ge?ndert am 9.10.2005 10:23 von i-spacke
  4. Autor dieses Themas

    dussel

    Kostenloser Webspace von dussel

    dussel hat kostenlosen Webspace.

    nein leider nicht!

    es geht immer noch nicht! :nosmile::nosmile:

    ps: die 4 ist gewollt!
  5. Hmm, ich wei? nicht obs daran liegt, aber die for-Schleife kannst du dir sparen. str_replace kann auch mit Arrays arbeiten. Au?erdem hab ich die ' mit den " im $array_2 vertauscht:
    <?php
    $array_1 = array(":&biggrin:",":&cool:",":&cry:",":&eek:",":&evil:",":&eye:",":&frown:",":&love:",":&smile:",":&wink:");
    
    //ohne & nur damit sie jetzt nicht umgwandelt werden
    
    $array_2 = array('<img src="images/smilies/biggrin.gif">','<img src="images/smilies/cool.gif">','<img src="images/smilies/cry.gif">','<img src="images/smilies/eek.gif">','<img src="images/smilies/evil.gif">','<img src="images/smilies/eye.gif">','<img src="images/smilies/frown.gif">','<img src="images/smilies/love.gif">','<img src="images/smilies/smile.gif">','<img src="images/smilies/wink.gif">');
    
    $gcomment = str_replace($array_1,$array_2,$gcomment4);
    ?>


    Beitrag ge?ndert am 9.10.2005 11:35 von tct
  6. Autor dieses Themas

    dussel

    Kostenloser Webspace von dussel

    dussel hat kostenlosen Webspace.

    danke @tct

    dein vorschlag hat funktioniert!

    Danke!

    ps: kann geclosed werden
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!