Zitat von
alcaeus:
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
Ich danke euch erstmal.
Klappt alles prima mit UTF-8. Ich speicher in der
DB ja nur kleine Formatierungen wie [b], <u>, [i],
, etc. zum Formatieren von News, etc.
Der Header der
HTML-Seite sieht momentan so aus:
Code:
<!DOCTYPE
HTML PUBLIC "-//
W3C//DTD
HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<
html>
<head>
<meta http-equiv="content-type" content="text/
html; charset=utf-8">
[...]
</head>
Wenn ich jetzt auf der Seite direkt "Ä" (also ohne Ä im Body-Bereich) eingebe, kommt bei Schwarzer Schrift auf weißem Hintergrund im FF eine schwarze Raute mit weißem Fragezeichen und im IE ein weißes Rechteck mit schwarzem Rahmen raus. Liegt das jetzt daran, dass die Datei auf meinem lokalen Rechner (XAMPP)
ASCII-codiert ist?