UTF-8 auf der ganzen Strecke: Wie man PHP, MySQL und den Webserver für die korrekte Arbeit mit Kyrillisch und Unicode konfiguriert
Hallo zusammen! Ich bin ein PHP-Anfänger und mir dreht sich schon der Kopf von den Problemen mit Zeichenkodierungen. Die Website ist in PHP geschrieben, die Datenbank ist MySQL, der Server ist Apache. Alles scheint zu funktionieren, aber sobald ein Benutzer russische Buchstaben in ein Formular eingibt, beginnt das Chaos: In der Datenbank werden Kauderwelsch wie «РџСЂРёРІРµС‚» gespeichert, und bei der Ausgabe auf der Seite erscheinen Fragezeichen oder leere Quadrate.
Ich habe versucht, im HTML-Header `` zu setzen – hat nicht geholfen. Ich habe in PHP `header('Content-Type: text/html; charset=utf-8');` geschrieben – auch kein Allheilmittel. In MySQL haben die Tabellen `utf8_general_ci`, aber die Daten werden trotzdem beschädigt. Hier ist ein Beispiel meines Codes:
```php
query("INSERT INTO users (name) VALUES ('$name')");
// Ausgeben
$result = $db->query("SELECT name FROM users");
while ($row = $result->fetch_assoc()) {
echo $row['name'];
}
?>
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen