• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Datenbank --> Array --> str_replace()

fiedel

Mitglied
Hallo Forumsmitglieder!

Folgendes Problem:
Ich habe die Smilies für mein Gästebuch in einer Datenbank gespeichert und möchte nun, dass beim Auslesen der Gästebucheinträge die Shortcuts der Smilies im Eintrag durch einen HTML-Code ersetzt werden... klappt aber nicht!
PHP:
  $sql = "SELECT `shortcut`, `location` FROM `smilies`";
  $res = mysql_query($sql);
  $replace = mysql_fetch_assoc($res);

  $comment = str_replace($replace['location'],"<img src=\"" . $replace['location'] . " alt=\"" . $replace['shortcut'] . "\" />",$comment);
Ich hoffe ihr könnt mir helfen! Danke im Voraus!

fiedel
 
Zuletzt bearbeitet:
Werbung:
Du hast doch das Ergebnis der sql-Abfrage in
PHP:
$res
, richtig? Das sollte normalerweise sowas wie eine Tabelle sein.

Damit du diese Tabelle in arrays umwadeln kannst nimmst du richtigerweise die Funktion
PHP:
mysql_fetch_assoc
.
Diese gibt aber immer nur 1 Zeile deiner Tabelle aus, du musst darüber eine Schleife machen:

PHP:
$sql = "SELECT `shortcut`, `location` FROM `smilies`";
  $res = mysql_query($sql);
while ($replace = mysql_fetch_assoc($res))
{
$comment = str_replace($replace['location'],"<img src=\"" . $replace['location'] . " alt=\"" . $replace['shortcut'] . "\" />",$comment);
}
Der Rest sieht richtig aus.

Mfg Mo3bius
 
Zuletzt bearbeitet:
Werbung:
Was passiert denn?

Was gibt der Code aus: ?

PHP:
$sql = "SELECT `shortcut`, `location` FROM `smilies`";
  $res = mysql_query($sql);
while ($replace = mysql_fetch_assoc($res))
{
print_r($replace);
}
 
Folgendes wird ausgegeben:
Array ( [shortcut] => :smile: [location] => img/smilies/35.gif ) Array ( [shortcut] => :gaehn: [location] => img/smilies/05.gif ) Array ( [shortcut] => :zwinker: [location] => img/smilies/02.gif ) Array ( [shortcut] => :veraergert: [location] => img/smilies/03.gif ) Array ( [shortcut] => :quassel: [location] => img/smilies/04.gif ) Array ( [shortcut] => :schleck: [location] => img/smilies/01.gif ) Array ( [shortcut] => :cool: [location] => img/smilies/06.gif ) Array ( [shortcut] => :???: [location] => img/smilies/07.gif ) Array ( [shortcut] => :newbie: [location] => img/smilies/13.gif ) Array ( [shortcut] => :pharao: [location] => img/smilies/08.gif ) Array ( [shortcut] => :fliege: [location] => img/smilies/09.gif ) Array ( [shortcut] => :crazy: [location] => img/smilies/10.gif ) Array ( [shortcut] => :lach: [location] => img/smilies/11.gif ) Array ( [shortcut] => :freak: [location] => img/smilies/12.gif ) Array ( [shortcut] => :jaeger: [location] => img/smilies/14.gif ) Array ( [shortcut] => :wechsel: [location] => img/smilies/15.gif ) Array ( [shortcut] => :hammer: [location] => img/smilies/16.gif ) Array ( [shortcut] => :zzz: [location] => img/smilies/17.gif ) Array ( [shortcut] => :kaputtlach: [location] => img/smilies/18.gif ) Array ( [shortcut] => :vorsicht: [location] => img/smilies/19.gif ) Array ( [shortcut] => :handy: [location] => img/smilies/33.gif ) Array ( [shortcut] => :mail: [location] => img/smilies/27.gif ) Array ( [shortcut] => :haue: [location] => img/smilies/24.gif ) Array ( [shortcut] => :box: [location] => img/smilies/25.gif ) Array ( [shortcut] => :eek:pa: [location] => img/smilies/29.gif ) Array ( [shortcut] => :eek:ma: [location] => img/smilies/30.gif ) Array ( [shortcut] => :kuckuck: [location] => img/smilies/31.gif ) Array ( [shortcut] => :troet: [location] => img/smilies/32.gif ) Array ( [shortcut] => :blumen: [location] => img/smilies/26.gif ) Array ( [shortcut] => :2blumen: [location] => img/smilies/34.gif ) Array ( [shortcut] => :windows: [location] => img/smilies/28.gif ) Array ( [shortcut] => :firefox: [location] => img/smilies/36.gif ) Array ( [shortcut] => :banane1: [location] => img/smilies/20.gif ) Array ( [shortcut] => :banane2: [location] => img/smilies/21.gif ) Array ( [shortcut] => :banane3: [location] => img/smilies/22.gif ) Array ( [shortcut] => :banane4: [location] => img/smilies/23.gif )
 
Werbung:
Zurück
Oben