Ubuntu 14 mit Plesk Charset Problem

Freetz

New Member
Hallo,

ich bräuchte da mal eure Hilfe. Ich habe das Problem, das bei mir UTF-8 wohl nicht funktioniert. Auf meiner Website funktionieren die Umlaute nicht.

Ich habe Daten in der Datenbank wie zum Beispiel "Schulfächer". Diese Daten lade ich aus der Datenbank und gebe Sie aus. Nur kommt dann "Schulf�cher"

In meiner HTMl Datei habe ich folgendes Stehen:
HTML:
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

Dann habe ich die /etc/apache2/apache2.conf bearbeitet und dort AddDefaultCharset UTF-8 eingetragen und den Server neugestartet aber das Problem liegt immer noch vor.

Das gleiche habe ich auch mit der httpd.conf in /var/www/vhosts/system/domain/conf/ gemacht. Auch ohne Erfolg. Habe ich irgendetwas übersehen oder was mache ich falsch?

Vielen Dank schonmal für Antworten.

Gruß
Freetz
 
Wenn die Datenbank kein UTF-8 liefert, deine Programmiersprache die Bytes falsch dekodiert, hast du das Problem auch.

Die Datenbank hat Konfigurationseinstellungen, welchen Zeichensatz sie verwendet, Dieses Zeichensatz-Encoding kann aber auch mit SQL anders gesetzt werden. Deine bevorzugte Programmiersprache hat Einstellungen wie sie mit Nicht-ASCII-Zeichensätzen umgeht. Deine Webanwendung hat Programmcode, der die gelieferten Bytes oder Zeichen je nach Kontext umwandelt.

Das Problem ist dein Programm als Mittler zwischen Daten und Ausgabe, da es nicht prüft, welche Daten es bekommt und dann falsch dekodiert.
 
Last edited by a moderator:
ich hab bei meiner Datenbank geschaut und da ist der Zeichensatz utf8_unicode_ci also sollte das passen, oder?

Ich habe daraufhin einmal auf meiner Startseite
PHP:
echo 'HÄllo'
ausgegeben und wieder das gleiche Problem. Das Ä wird nicht dargestellt.

Client seitig habe ich ja die Meta Anweisungen drin. Kann das Problem nicht doch am Server liegen?
 
Das HTML-Element meta nutzt nix, wenn der Server im HTTP-Header das falsche Charset sendet.

Hast du mal mit curl -I http://..../ oder wget --server-response --spider http://..../ dir die response anzeigen lassen, wenn du dein echo... aufrufst?
 
Back
Top