PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : text ersetzen durch smile


Lord_X
2004-04-20, 21:06:32
Hallo
Ich habe ein Problem und hoffe jemand kann mir helfen.
Die Ausgabe meines Gästebuch lese ich so aus...

$text= "<div id=content2><strong>$row->name </strong>$row->email $row->datum </div><br>$row->text<p>";
$smile="<img src='include/smile/smile.gif'>";
$text= str_replace(":-)",$smile, $text);
echo $text;

...dabei ersetze im Text z.B. :-) durch das passende smile-logo. Das klappt auch wunderbar.
Nur wie kann ich noch weitere smiles einbinden, so das auch diese ersetzt werden? z.B. :P oder :D

Danke Lord_x

Nase
2004-04-20, 21:20:19
Ich mache das immer so:

function addSmilie($added)
{
include("./includes/smilies.inc.php");

$anzahl = count($smilietag);

for($i = 0; $i < $anzahl; $i++)
$added = str_replace($smilietag[$i], '<img src="' . $smilieurl[$i] . '" alt="">', $added);

Und in einer zweiten Datei die Smilie-Tags und URLs zum Bild in zwei verschiedenen Arrays:

$smilietag = array(
':)',
';)',
':('
);

$smilieurl = array(
'gfx/smilies/smile.gif',
'gfx/smilies/wink.gif',
'gfx/smilies/cry.gif'
);

Muss man so natürlich nicht machen, kann man aber. Und immer darauf achten, dass die Smilie-Tags nicht mit den gleichen Buchstaben/Zahlen anfangen, sonst gehts nicht.


Edit: scheiss automatische Umwandlung der Smilies...

Lord_X
2004-04-20, 21:35:07
irgendwie klappt das nicht kannst du mir das genauer erklären?

Nase
2004-04-20, 21:41:44
Was klappt denn nicht? Du musst deinen Text an die Funktion addSmilie übergeben. Die Datei mit den Arrays muss smilies.inc.php heissen und natürlich auch zum richtigen Verzeichnis verweisen.

Lord_X
2004-04-20, 21:51:23
ok hab den fehler ganz zum schluss fehlte das } :)

Kannst du mir sagen wie ich das oben bei mir einbinden kann? Ich bin noch anfänger bei php =)

Fals es jemanden noch interesiert...

$text= "<div id=content2><strong>$row->name </strong>$row->email $row->datum </div><br>$row->text<p>";

$text = str_replace(":-)","<img src=\"include/smile/smile.gif\">",$text);
$text = str_replace(":)","<img src=\"include/smile/smile.gif\">",$text);
$text = str_replace(":-(","<img src=\"include/smile/sad.gif\">",$text);
$text = str_replace(":(","<img src=\"include/smile/sad.gif\">",$text);
$text = str_replace(";-)","<img src=\"include/smile/zwinck.gif\">",$text);
$text = str_replace(";)","<img src=\"include/smile/zwinck.gif\">",$text);
$text = str_replace(":P","<img src=\"include/smile/baeh.gif\">",$text);
$text = str_replace(":p","<img src=\"include/smile/baeh.gif\">",$text);
$text = str_replace(":-D","<img src=\"include/smile/grins.gif\">",$text);
$text = str_replace(":D","<img src=\"include/smile/grins.gif\">",$text);
$text = str_replace(":cool:","<img src=\"include/smile/cool.gif\">",$text);
$text = str_replace(":wink:","<img src=\"include/smile/wink.gif\">",$text);
$text = str_replace(":bier:","<img src=\"include/smile/bier.gif\">",$text);
$text = str_replace(":sniper:","<img src=\"include/smile/sniper.gif\">",$text);
$text = str_replace(":???:","<img src=\"include/smile/huh.gif\">",$text);
$text = str_replace(":kotz:","<img src=\"include/smile/puke.gif\">",$text);
$text = str_replace(":lol:","<img src=\"include/smile/lol.gif\">",$text);
$text = str_replace(":up:","<img src=\"include/smile/up.gif\">",$text);
$text = str_replace(":down:","<img src=\"include/smile/down.gif\">",$text);

echo $text;

Ich habs jetzt so gelöst :bier: