Wo ist das Problem ?
Du sammelst Similies.
Stellst sie in einer Reihe auf, darunter eine Textbox.
Der User schreibt und meint er müsste ein Smily setzen, er drückt auf ein Smily, das sendet die Seite als formular und als ziel nimmt es dieselbe seite wieder und übergibt die Variable die das Smily identifiziert ( z.b. ":-)") und hängt es dem String aus der Textbox hintendran. Dieser String kommt dann als Vorgabewert in die Textbox und der User kann weiterschreiben.
Wenn fertig, wird der ganze Klumpatsch in die DB eingetragen.
Beim abrufen aus der DB, lässt du eine Stringfunktion drüber laufen die alle :-) , ;-) , usw. durch <img src="smily1.gif"> usw. ersetzt, fertig.
Friede, Freude, Zimtstange.
Grüße, Matthias
p.s. Ein schönes Wort: Blindschleichleiche