Da Pinky: problem mit textarea und firefox

habe hier einen text den der user eingeben darf (textfeld), gespeichert wird (datenbank) und auch wieder ausgegeben werden soll (html) - also so ähnlich wie ein forum.

soweit funktionierts auch schon mit speichern und anzeigen - dachte ich bis heute. wenn man mit firefox anrückt, den text eingibt und auf "vorschau" klickt (textarea->html) , werden alle deutschen sonderzeichen in "?" verwandelt. hatte heute eine eintrag, in welchen die ü's in "¨¹" umgewandelt wurden. mit opera und ie funktioniert es wie es soll, nur firefox versaut hier irgendwas. es scheint kein bug in meinem php-code zu sein, denn selbst wenn ich den inhalt des textfeldes ausgebe ohne irgendwas zu konvertieren, bekomme ich nur ein "?" an den stellen an welchen sich umlaute befinden sollten.

hängt sich firefox womöglich am doctype auf, der bei mir auf EN eingestellt ist:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd"

. und wenn ja wie kann ich das ändern? der rest der seite ist nicht in DE, nur die einträge dürfen es sein.

  1. hi,

    wenn man mit firefox anrückt, den text eingibt und auf "vorschau" klickt (textarea->html) , werden alle deutschen sonderzeichen in "?" verwandelt. [...]
    hängt sich firefox womöglich am doctype auf

    Nein - vermutlich eher am angegebenen Encoding bzw. Charset.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
  2. Hi!

    Zur deiner falschen Zeichenkodierung bzw. Einstellung hat wahsaga ja bereits was geschrieben...

    hängt sich firefox womöglich am doctype auf, der bei mir auf EN eingestellt ist:

    Da hängt sich der Firefox sicherlich nicht dran auf... un da muß auch EN stehen.

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd"
    . und wenn ja wie kann ich das ändern? der rest der seite ist nicht in DE, nur die einträge dürfen es sein.

    Laß die DoctypeDeclaration mal so wie sie ist. Wenn du da ein DE reinsetzt, dann ist es falsch.

    Das hier sollte dir weiterhelfen:
    <meta http-equiv="content-language" content="de">
    <meta http-equiv="content-type" content="text/html; charset=DEIN_VERWENDETES_CHARSET">
    Natürlich muß deine Datei auch mit dem richtigen Charset erstellt und gespeichert sein.

    Gruß, rob

    1. Natürlich muß deine Datei auch mit dem richtigen Charset erstellt und gespeichert sein.

      Bzw. Charset der Datenbank...

      Alternativ dazu könntest du aber auch einfach die Umlaute ersetzen lassen, so daß die entsprechenden HTML- oder Unicode-Maskierungen verwendet werden. PHP bietet da einige an Funktionen.

      Gruß, rob

    2. Das hier sollte dir weiterhelfen:
      <meta http-equiv="content-language" content="de">
      <meta http-equiv="content-type" content="text/html; charset=DEIN_VERWENDETES_CHARSET">
      Natürlich muß deine Datei auch mit dem richtigen Charset erstellt und gespeichert sein.

      aha, danke. das hat geholfen. weiss schon jemand bescheid wann der unfug mit den umlauten und sz abgeshaft wird?  :)