Mark: Umlaute - MySql - Tip?

Hallo Ihrs,

ich habe da bei meiner Planung wohl ein wenig murks gemacht. Dachte, bei Eingabe, dass die Umlaute gleich in html umgewandelt werden sollten um hinterher die Ausgabescripte so kurz wie möglich zu halten. Jetzt habe ich natürlich schon reichlich Daten drin und das Ergebnis wird nicht wirklich korrekt "sortiert". Hat da jemand einen Tip, wie ich das jetzt ausbügeln kann?

Danke und Gruss,

Mark

  1. Moin auch,

    schon mal die PHP-funktion htmlspecialchars() angesehen ?

    Gruß von der Ostsee

    Hanjo

    1. schon mal die PHP-funktion htmlspecialchars() angesehen ?

      Hallo Hanjo,

      klar, würde ich auch sofort nehmen wenn ich die Eingabe neu mache. Mein Problem ist allerdings, dass ich im vorherigen Script htmlentities() benutzt habe und ü,ä,ö als ü, ... in die Datenbank gelandet sind.

      Gruss, Mark

      1. Moin!

        klar, würde ich auch sofort nehmen wenn ich die Eingabe neu mache. Mein Problem ist allerdings, dass ich im vorherigen Script htmlentities() benutzt habe und ü,ä,ö als ü, ... in die Datenbank gelandet sind.

        Also mußt du jeden Datensatz auslesen, die Entities zurückwandeln, und den Datensatz wieder speichern. Das kann man auch per Skript machen. :)

        - Sven Rautenberg

        1. Also mußt du jeden Datensatz auslesen, die Entities zurückwandeln, und den Datensatz wieder speichern. Das kann man auch per Skript machen. :)

          - Sven Rautenberg

          Komme ich wohl nicht drum rum...

          Ist es denn richtig, mit:

          <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">

          ... dann brauchen Umlaute nicht mehr codiert zu werden?

          Gruss, Mark

          1. Moin!

            Ist es denn richtig, mit:

            <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">

            ... dann brauchen Umlaute nicht mehr codiert zu werden?

            Definiere "Codiert werden".

            Richtig ist: Man muß dann keine Entities mehr schreiben.
            Aber trotzdem muß natürlich der richtige Bytecode für "Ä" etc. in die Datei geschrieben werden. Das ist zum Glück aber bei den meisten Editoren der Fall. Außerdem muß der Webserver die HTML-Seite dann mit der gleichen Zeichensatzangabe ausliefern, wie du in deinem Meta-Tag geschrieben hast. Das Meta-Tag ist nur eine Hilfsangabe, hat die untergeordnetste Bedeutung und würde sich gegen die Angabe im HTTP-Header nicht durchsetzen.

            - Sven Rautenberg

            1. O.K., Danke für die Hilfe und Info :)

              Gruss, Mark

            2. Hallo Sven,

              Deine Grafik am Ende Deines Postings erschwert das Lesen der Nachricht ungemein, weil auf meinem PC es recht lange dauert eh diese gezeichnet ist und so lange auch keine Eingaben vom PC entgegen genommen werden. Könnte man das nicht als reinen Text ausformulieren?

  2. ich habe da bei meiner Planung wohl ein wenig murks gemacht. Dachte, bei Eingabe, dass die Umlaute gleich in html umgewandelt werden sollten um hinterher die Ausgabescripte so kurz wie möglich zu halten. Jetzt habe ich natürlich schon reichlich Daten drin und das Ergebnis wird nicht wirklich korrekt "sortiert". Hat da jemand einen Tip, wie ich das jetzt ausbügeln kann?

    Wenn ich mich nicht ganz täusche, brauchst du doch nur den richtigen charset anzugeben und musst dann die Umlaute nicht mehr umwandeln. Ich mach das schon lang nicht mehr.

    Also wenn du:
    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">

    in den Header schreibst, ist es nicht nötig Umlaute zu codieren.

    Struppi.