Hallo!
Ich weiß, dass das bestimmt eine häufig gestellte Frage ist, aber ich hab schon so viel nach Lösungsmethoden gesucht und leider keine gefunden.
Ich habe eine MySQL-Datenbank von der ich Texte auslese und mittels PHP ausgeben möchte. Problem: Umlaute!
Statt einem ü steht zum Beispiel ein A mit einer Tilde und ein 1/4 - Zeichen. Das umstellen des Zeichensatzes auf ISO8859-1 oder UTF-8 bringt nichts und auch der Befehl htmlentities() wandelt die Zeichen falsch um, so dass die Ausgabe im Browser immer A Tilde... usw ist.
Das einzige was hilft ist, wenn ich im Firefox manuell auf Kodierung UTF-8 schalte, aber dies hilft nur solange, bis ich die Page neu ansurfe.
Laut w3c ist die Page aber XHTML 1.0 strict und sieht zur Zeit so aus:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/plain; charset=ISO-8859-1"/>
<title>Testpage</title>
</head>
<body>
<?php
include_once('DBProvider.php');
$db = new DBProvider('localhost', 'user' 'root', '');
$db->query("SELECT * FROM TextArt");
while ($object = $db->fetchObject())
{
print(($object->Bezeichnung)) . '<br/>';
}
?>
</body>
</html>
Vielen Dank für eure Hilfe!