Lieber Sp33dy,
Dein Code:
for($i = 0; $i < count($smilie); $i++) {
$kommentar = str_replace($smilie[$i], $link[$i], nl2br(htmlspecialchars($row["Kommentar"])));
}
echo "<div id=\"comment_text\">" . $kommentar . "</div></div>\n";
In der Zeile mit $kommentar=... überschreibst Du jedesmal in der Schleife den bisher dort eingetragenen Wert durch einen neuen Wert. Mein Vorschlag:
$alle_smilies = array(
// jedes Unter-Array ist ein "assoziatives" Array mit Index "kuerzel" und Index "bild"
array(
'kuerzel' => ':)',
'bild' => 'http://www.cs-erweiterungen.de/images/smilies/smile.gif'
),
array(
'kuerzel' => ';(',
'bild' => 'http://www.cs-erweiterungen.de/images/smilies/wink.gif'
),
array(
'kuerzel' => ':(',
'bild' => 'http://www.cs-erweiterungen.de/images/smilies/frown.gif'
)
);
$kommentar = ''; // Leeren String initialisieren (wird in der Schleife etappenweise gefüllt)
foreach ($alle_smilies) as $ein_smiley) {
// hier existiert nun eine Variable namens "smiley". Sie ist eine Kopie
// des entsprechenden Unterarrays von $alle_smilies und enthält die zwei
// Indices 'kuerzel' und 'bild'.
$kommentar .= str_replace(
$ein_smiley['kuerzel'], // Enthält das Kürzel, das jetzt durch
$ein_smiley['bild'], // die Bilddatei eretzt wird.
nl2br(
htmlspecialchars($row["Kommentar"])
)
);
}
// Der Kommentar braucht kein <div>! Ein simples <p> genügt und ist wesentlich semantischer!
echo '<p id="comment_text">' . $kommentar . "</p>\n";
Liebe Grüße aus Ellwangen,
Felix Riesterer.
--
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)