Moin,
mit UTF-8 oder UTF-16 faehrst du heutzutage am geschicktesten. Beachte aber, dass PHP keine Multibyte-Strings kennt, das funktioniert erst in PHP 5.3 oder sogar erst PHP 6. Das hat zur Folge dass z.B. strlen() bei Multibyte-Strings falsche Ergebnisse liefert. Es gibt allerdings die mb_string-Extension, die mit Multibyte-Strings umgehn kann.
Was das andere charset betrifft: iso-8859-1 ist auch als latin1 bekannt, du koenntest also latin1_binary verwenden. Beachte bei der Collation also auch, dass saemtliche Charsets mit einem _ci am Ende case-insensitive sind, da ist Matze letztens schon drueber gestolpert
Ansonsten kann ich Bernhard nur zustimmen -
HTML hat erst ausserhalb der
DB was zu suchen. In der
DB solltest du allerhoechstens eingegebenen
HTML-Code mit htmlspecialchars() entschaerfen, damit du das nicht bei jedem Anzeigen machen musst.
Greetz
alcaeus