thomas: Formular stellt unter Linux keine Umlaute dar!

Hallo Leute,

ich habe ein Problem mit meinem Formular. Wenn ich unter Windows XP eine Antwort per eMail bekomme werden alle Umlaute korrekt dargestellt. Habe ich Ubuntu 8.04 LTS laufen und bekomme eine Nachricht, wird überhaupt kein Zeichen für die Umlaute übermittelt. Der Anbieter des Formulars, hat keinen Fehler auf meiner Seite finden können. Es muss also entwas mit Linux zu tun haben, nur was?
!doctype html public "-//W3C//DTD HTML 4.0 //EN">

<html>

<head>

<title>Kontaktseite</title>

<meta name="robots" content="Index,follow">
<META http-equiv="Content-Type" content="text/html; accept-charset=ISO-8859-1">

<meta name="DC.Language"    content="de">

<meta name ="platform" content="Windows">
<td><form action="http://www.Formular-Chef.de/Formular-Chef.cgi" method="post">

<input type="hidden" name="empfaenger" value="xxxx">

<input type=hidden name=pflicht value="name,strasse,plz,ort,empfaenger,anliegen">

Was hat das mit dem Iso-8859-1 aufsich, die Zeile ist doch für den Zeichensatz zuständig oder? Da im Windows alles in Ordnung, kann das doch nur was mit Linux tun haben. Wenn ich eine normale eMail bekomme, ist auch unter Linux alles in Ordnung. Ich hoffe ihr könnt mir helfen!

Vielen Dank.

Gruß
Thomas

  1. hi,

    Was hat das mit dem Iso-8859-1 aufsich, die Zeile ist doch für den Zeichensatz zuständig oder?

    In erster Linie ist die Content-Type-Angabe im HTTP-Header zuständig, dem Header also, dem die Seite mit dem Formular folgt. Beispiel:

    Content-Type: text/html; charset=ISO-8859-1

    Wie sieht denn das bei Dir aus?

    Hotti

    1. hi,

      Was hat das mit dem Iso-8859-1 aufsich, die Zeile ist doch für den Zeichensatz zuständig oder?

      In erster Linie ist die Content-Type-Angabe im HTTP-Header zuständig, dem Header also, dem die Seite mit dem Formular folgt. Beispiel:

      Content-Type: text/html; charset=ISO-8859-1

      Wie sieht denn das bei Dir aus?

      Hotti

      Hallo Hotti,

      vielen Dank für die Antwort, die Zeile sieht bei mir so aus:
      <META http-equiv="Content-Type" content="text/html; accept-charset=ISO-8859-1">
      Die Zeile habe ich vom Formularanbieter übernommen, ist die richtig so, oder muss ich was ändern?

      Vielen Dank
      Gruß
      Thomas

      1. hi,

        vielen Dank für die Antwort, die Zeile sieht bei mir so aus:
        <META http-equiv="Content-Type" content="text/html; accept-charset=ISO-8859-1">
        Die Zeile habe ich vom Formularanbieter übernommen, ist die richtig so, oder muss ich was ändern?

        Ändere
        content="text/html; accept-charset=ISO-8859-1"

        in
        content="text/html; charset=ISO-8859-1"

        Sofern iso-8859-1 die Codierung Deiner Wahl ist.

        Aber vorher kommt der http-header, der muss lauten

        Content-Type: text/html; charset=ISO-8859-1

        für html-Docs könntest Du das in der .htaccess machen mit der Zeile
        AddDefaultCharset ISO-8859-1

        Anm.: das Schlüsselwort 'accept' (obenstehend) ist fehl am Platz, es gehört in einen Request-Header für User-Agents (Browser), nicht jedoch in ein HTML-Dokument, denn das ist ja schon die Response.

        Gute Nacht ;-)
        Hotti

        --
        Das Beatmungsgerät ist nicht im Versicherungsumfang enthalten.
        1. hi,

          vielen Dank für die reichhaltigen informationen. leider muß ich mich erstmal in das Thema einarbeiten. Gibt es zu dem Thema eine Gute Internetseite für Anfänger?

          Gruß
          Thomas Weiss

          hi,

          vielen Dank für die Antwort, die Zeile sieht bei mir so aus:
          <META http-equiv="Content-Type" content="text/html; accept-charset=ISO-8859-1">
          Die Zeile habe ich vom Formularanbieter übernommen, ist die richtig so, oder muss ich was ändern?

          Ändere
          content="text/html; accept-charset=ISO-8859-1"

          in
          content="text/html; charset=ISO-8859-1"

          Sofern iso-8859-1 die Codierung Deiner Wahl ist.

          Aber vorher kommt der http-header, der muss lauten

          Content-Type: text/html; charset=ISO-8859-1

          für html-Docs könntest Du das in der .htaccess machen mit der Zeile
          AddDefaultCharset ISO-8859-1

          Anm.: das Schlüsselwort 'accept' (obenstehend) ist fehl am Platz, es gehört in einen Request-Header für User-Agents (Browser), nicht jedoch in ein HTML-Dokument, denn das ist ja schon die Response.

          Gute Nacht ;-)
          Hotti

      2. moin,

        Die Zeile habe ich vom Formularanbieter übernommen, ist die richtig so, oder muss ich was ändern?

        Du musst Dich vor Allem mal mit MIME befassen und mit der Formularverarbeitung, auch wenn Letztere derzeit ein Fremdanbieter macht.

        MIME, rfc 2045 ff
        Ein Webformular, egal mit welcher Codierung, liefert Dir schonmal Zeichen, die über rfc 822 hinausgehen, also nicht nur ascii. Das muss für body und subject entsprechend deklariert werden, siehe o.g. rfc's und das ist Sache der Formularverarbeitung.

        Deine Sache ist es, ein Formular zur Verfügung zu stellen, was soweit internationalisiert ist, dass es möglichst viele zu erwartende Eingaben abdeckt und das ist nicht iso-8859-1 sondern utf-8.

        Inwieweit das alles Dein Forumular-Sevice-Anbieter managen kann, steht in den seinen AGB's o.ä. Dokumentationen, soweit die überhaupt vorhanden sind. Wahrscheinlich ists besser, Du nimmst die Formularverarbeitung selbst in die Hand, sonst verschwendest Du Deine Zeit.

        Schönen Tag, Grüße an Alle,
        Hotti