# Bei Umlauten kommen komische Zeichen



## Manuel (3. Februar 2011)

Hallo,

ich habe ein Gästebuch programmiert. Wenn aber Umlaute in das Formular eingetragen werden und das Formular wird abgesendet und in der DB gespeichert (also der Text der eingegeben wurde), kommt statt ö dann Ã¼ oder so. Ich weis das es &ouml; gibt aber ich kann den User dann ja nicht erklären das er statt ö dann &ouml; eintragen soll. Das kapiert und macht halt nicht jeder. Gibt es irgendwie einen Trick mit PHP wo ich das ö in &ouml; umwandeln kann ?


----------



## SpiceLab (3. Februar 2011)

Manuel hat gesagt.:


> Gibt es irgendwie einen Trick mit PHP wo ich das ö in &ouml; umwandeln kann ?


Im XHTML-Forum nach einem PHP-Trick  zu fragen ist optimistisch bis gewagt 

Denkbares Szenario: UTF-8 als Zeichensatz für die Seiten gewählt, diese im Editor jedoch nicht UTF8-kodiert gespeichert, serviert einem genau diesen Zeichensalat anstelle der Umlaute ;-)

Die Stichwörter den Suchmaschinen (interne Forensuche, Google & Co) genannt, fördern dir weitere mögliche Ursachen (u.a. mit dem DB-/Server-Charset) und deren Lösungen zu Tage.


----------



## Raptor72 (3. Februar 2011)

Hallo Manuel,

es gibt hier http://de.selfhtml.org/html/allgemein/zeichen.htm#umlaute eine gute Seite die dir eine Erklärung liefert und auch wie du diese Umlaute ohne Probleme in Html einfügen kannst.

Denn anstatt in deinem Quellcode dann Gästebuch stehen zu haben, muß es so in deinem Quellcode stehen. 

G&Auml;stebuch, dan hast du auf der Website die richtige Ausgabe.


----------



## Halpha (3. Februar 2011)

1. Deine Datenbank auf UTF-8 stellen
2. Alle Dateien auf Utf-8 umstellen

Wenn es dann noch nicht geht dann gibts noch paar andere kleine Tricks

Lg

Michael


----------



## Manuel (5. Februar 2011)

Hab etz in phpMyAdmin unter meiner Tabelle dann unter Operation und dann bei Kollation auf utf8_unicode_ci umgestellt. Und jedes einzelne Feld auch auf utf8_unicode_ci umgestellt. Mein HTML Dokument fängt so an:

```
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" xml:lang="de">
 <head>
  <title>G&auml;stebuch</title>
```

Es geht aber immernochnicht wenn der Benutzer das in der Datenbank speichert also seinen Eintrag kommen immernoch die komischen Zeichen.


----------



## Flex (5. Februar 2011)

Ist die Datei selbst auch als UTF-8 gespeichert? Setzt du die Verbindung explizit auf UTF-8 per 

```
SET NAMES 'utf8'
```
gesetzt?


----------

