Wie von anderen erwähnt, müssen Sie von Ende zu Ende in UTF8 konvertieren, wenn Sie "Sonderzeichen" unterstützen möchten. Das bedeutet Ihre Webseite, PHP, MySQL-Verbindung und MySQL-Tabelle. Die Webseite ist ziemlich einfach, verwenden Sie einfach das Meta-Tag für UTF8. Idealerweise würden Ihre Header auch UTF8 sagen.
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
Stellen Sie Ihr PHP so ein, dass es UTF8 verwendet. Die Dinge würden wahrscheinlich trotzdem funktionieren, aber es ist eine gute Maßnahme, dies zu tun:
mb_internal_encoding('UTF-8');
mb_http_output('UTF-8');
mb_http_input('UTF-8');
Für MySQL möchten Sie Ihre Tabelle in UTF8 konvertieren, ohne dass Sie exportieren/importieren müssen.
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8
Sie können und sollten mysql auf utf8 als Standard konfigurieren. Sie können aber auch die Abfrage ausführen:
SET NAMES UTF8
als erste Abfrage nach dem Verbindungsaufbau und "konvertiert" Ihre Datenbankverbindung in UTF8.
Das sollte alle Ihre Zeichenanzeigeprobleme lösen.