aitee: mysql db -» Eingabe der Umlaute ok, Ausgabe falsch

Hi all,

kann mir wer sagen, warum alle Umlaute die ich in meiner DB speichere bei der Ausgabe komische Zeichen ergeben?
Ich meine klar, liegt warscheinlich an der Spracheinstellung oder?
Doch wo ändere ich das?

greetz, aitee

  1. Hallo,

    lass die Umlaute doch ersätzen.

    Mit str_replace(...)

    Dann einfach Ö in ö etc.

    MFG
    Andavos

    --
    http://www.rpgcommunity.de/clanwissen/index.php Webdesign, PHP, Clan-Aufbau und mehr
    1. lass die Umlaute doch ersätzen.

      Das könnte ich natürlich tun, ist aber denke ich nicht Sinn der Sache. Ich suche wirklich nur nach einer Option die DB das gleich richtig machen zu lassen. Ich denke die DB sollte in der Lage sein alle gängigen Zeichensätze zu unterstützen.

      Aber thx 4 reply

      1. Moin!

        lass die Umlaute doch ersätzen.

        _Wenn_ schon auf diese brachiale Tour, dann doch wenigstens mit einer vernünftigen Funktion: htmlentities(). Dann muß man nicht dutzende von Ersetungsoperationen manuell durchführen.

        Das könnte ich natürlich tun, ist aber denke ich nicht Sinn der Sache. Ich suche wirklich nur nach einer Option die DB das gleich richtig machen zu lassen. Ich denke die DB sollte in der Lage sein alle gängigen Zeichensätze zu unterstützen.

        Ich stelle mir die Frage, ob es tatsächlich die Datenbank ist, die hier versagt. Woran erkennst du das? Am Browserergebnis? Das hat nichts zu sagen, da kann der Browser auch Mist bauen.

        Wichtig ist, dass du in deiner HTML-Seite den verwendeten Zeichensatz angibst. Am sinnvollsten mit Meta (content-type-Angabe). Dann weiß der Browser, wie er die Umlaute zu interpretieren hat (nämlich als Umlaute, nicht als UTF-8-Zeichen, die zu Müll führen). Oder du checkst mal ASCII-Klartext (dazu reicht es bei Browsern außer dem IE vermutlich, einfach ganz am Seitenanfang mit header("Content-type: text/plain"); die Darstellung auf "Quelltext" umzustellen - oder du speicherst das DB-Abfrageergebnis mal in einer Datei und schaust sie dir an.

        Natürlich kann MySQL mit verschiedenen Zeichensätzen umgehen. Ich habe nur bislang noch keinerlei Datenbank gesehen, die mit normalen, westeuropäischen Sonderzeichen standardmäßig _nicht_ umgehen konnte. Konsultiere im Zweifel auch mal die MySQL-Doku. Gibts ja zum Glück auch in deutsch: http://www.mysql.de

        - Sven Rautenberg

        --
        "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
        (fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)
        1. _Wenn_ schon auf diese brachiale Tour, dann doch wenigstens mit einer vernünftigen Funktion: htmlentities(). Dann muß man nicht dutzende von Ersetungsoperationen manuell durchführen.

          wie schon gesagt ... ;)

          Ich stelle mir die Frage, ob es tatsächlich die Datenbank ist, die hier versagt. Woran erkennst du das? Am Browserergebnis? Das hat nichts zu sagen, da kann der Browser auch Mist bauen.

          Nein, ich habe den Charset richtig angegeben, ganz sicher. Und nebenbei, alles andere wird auch richtig angegeben.

          Natürlich kann MySQL mit verschiedenen Zeichensätzen umgehen. Ich habe nur bislang noch keinerlei Datenbank gesehen, die mit normalen, westeuropäischen Sonderzeichen standardmäßig _nicht_ umgehen konnte. Konsultiere im Zweifel auch mal die MySQL-Doku. Gibts ja zum Glück auch in deutsch: http://www.mysql.de

          kk werd mal reinschaun, thx

  2. Hallo IT,

    kann mir wer sagen, warum alle Umlaute die ich in meiner DB speichere bei der Ausgabe komische Zeichen ergeben?

    hast Du denn ein schönes Frontend, z.B. MySql-Front? da schaue ich immer erstmal nach, was denn nun wirklich in der DB steht.

    Gruß, Andreas