Die Ersetzung von bestimmten Steuerzeichen (bspw. ":-)") durch entsprechende img-Tags kann server- oder Clientseitig geschehen. An welcher Stelle Du ansetzt, bleibt Dir überlassen.
Das stupide Ersetzen von Zeichenketten mittels einfacher Stringersetzung kann aber zu Problemen führen.
Ich war auf Urlaub und musste meine Sonnenbrille 8) aufsetzen.
Ich bin ein Beispielsatz mit vielen Wörtern (ohne diese Klammer weniger als 8).
Wenn du nun 8) durch ein Sonnenbrillensmile ersetzt, bekommst du im 2. Satz ein Problem.