Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

Codierungsprobleme mit den Umlauten im Kontaktformular

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Pfauli
PostRank 5
PostRank 5
Beiträge: 223
Registriert: 12.05.2009, 17:55

Beitrag von Pfauli » 11.02.2010, 21:20

Hallo Zusammen

Ich habe mich im Internet umgesehen und danach gesucht, aber nicht genau das gefunden, was mein Problem darstellt. Die meisten Seiten behandeln php-Probleme, oder aber den Fehler Charset falsch. Und zwar werden Umlaute und Sonderzeichen bei Erhalt einer Mail über das Kontaktformular falsch dargestellt:

"Guten Abend Herr Münzer"
[...]
"Mit freundlichen Grüßen"

Die Webseite mit dem Kontaktformular hat folgende Meta Angabe:

Code: Alles auswählen

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
Diese müsste doch hierfür greifen, oder?

Mein Formular ist durch folgende Befehle weiterhin definiert:

Code: Alles auswählen

<form action="/system-cgi/formmail.pl" method="POST">
							<input type=hidden name="recipient" value="ab@xyz.de">
							<input type=hidden name="redirect" value="http&#58;//www.xyz.htm">
							<input type="hidden" name="subject" value="Kontaktanfrage">
							<input type="hidden" name="required" value="name,email,subject">
							<input type=hidden name="missing_fields_redirect" value="http&#58;//www.xyz-fehler.htm">
							<input type=hidden name="env_report" value="REMOTE_HOST, HTTP_USER_AGENT,REMOTE_ADDR">
							<input type=hidden name="print_config" value="email,subject">
Mir fehlt das Wissen, worin der Fehler besteht.
Was mache ich falsch? Fehlt etwas? Kann mir jemand helfen?

Viele Grüße
Sören
Hier könnte ihre Werbung stehen!

Anzeige von ABAKUS

von Anzeige von ABAKUS »

Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

jackwiesel
PostRank 10
PostRank 10
Beiträge: 5820
Registriert: 09.09.2007, 09:44
Wohnort: Bochum

Beitrag von jackwiesel » 11.02.2010, 21:46


Pfauli
PostRank 5
PostRank 5
Beiträge: 223
Registriert: 12.05.2009, 17:55

Beitrag von Pfauli » 11.02.2010, 22:18

Hallo Jackwiesel

Vielen Dank für den hinweisenden Link.
Mein Webpacket ist nicht PHP-fähig.

Habe ich jetzt ein Problem?
Hier könnte ihre Werbung stehen!

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


jackwiesel
PostRank 10
PostRank 10
Beiträge: 5820
Registriert: 09.09.2007, 09:44
Wohnort: Bochum

Beitrag von jackwiesel » 11.02.2010, 22:23

Jepp... WER generiert denn dann Dein Kontaktformular, der Zauberer von Ozz...??? :o

Pfauli
PostRank 5
PostRank 5
Beiträge: 223
Registriert: 12.05.2009, 17:55

Beitrag von Pfauli » 11.02.2010, 22:38

Hm ...

Ich habe mich einfach an dem vorgefertigten Script des Providers rangemacht, bei dem ich dem ich Url inkl. Webspace gemietet habe.

Mal schauen, ob ich etwas übersehen habe.
:oops:
Hier könnte ihre Werbung stehen!

Pfauli
PostRank 5
PostRank 5
Beiträge: 223
Registriert: 12.05.2009, 17:55

Beitrag von Pfauli » 12.02.2010, 10:12

jackwiesel hat geschrieben:Jepp... WER generiert denn dann Dein Kontaktformular, der Zauberer von Ozz...??? :o
Zitat vom Support hat geschrieben:
Wir haben Ihr Anliegen überprüft und empfehlen Ihnen, in Ihrem Browser
die Zeichensatzoptionen ebenfalls zu überprüfen. Da Sie UTF-8 in Ihrem
Kontaktformular definiert haben, jedoch Ihre Besucher vermutlich den
Standard-Zeichensatz für Windows "ISO-8859-1" verwenden kann es hierbei
zu Problemen kommen. Wir empfehlen Ihnen testweise den Eintrag
"charset=utf-8" in "charset=iso-8859-1" abzuändern.

Bitte beachten Sie, dass unser Kontaktformular nicht auf PHP basiert und
auch nicht verändert werden kann, da Änderungen am Kontaktformular
serverweit gültig sind und dies zu Problemen bei anderen Kunden auf dem
Server führen könnte.
Wenn ich jetzt meiner Kontakt-Seite den "charset=iso-8859-1" zuweise, und jemand schreibt mir und hat "charset=utf-8", dann habe ich doch das gleiche Problem in Grün, oder nicht?

Oder bin ich auf dem flaschen Dampfer?
Sind denn die meisten Browser auf ISO eingestellt?
(Ich wusste gar nicht, dass das damit etwas zu tun hat und dachte immer die META Zuweisung meiner Page ist Feder führend...) :bad-words:
Hier könnte ihre Werbung stehen!

ishmael
PostRank 4
PostRank 4
Beiträge: 101
Registriert: 18.04.2009, 09:59

Beitrag von ishmael » 12.02.2010, 11:18

Meine Empfehlung: wechsle den Hoster! Die müssen doch wissen, welche Zeichenkodierung deren Skript erfordert.

Im normalfall, (also wenn man auf das Skript zugriff hat) musst Du zwei Dinge beachten:
1) Der Zeichensatz des HTML-Formulars muss bekannt und an den Client mitgesendet werden (am besten via Content-type header). Im Regelfall kommen die Daten von dem Formular dann auch in dieser Zeichenkodierung bei dir an.

2) Der verwendete Zeichensatz muss in den E-Mailheader.

Wenn du das Skript nicht anpassen kannst, musst du deine HTML-Dateien an den Zeichensatz anpassen, mit denen dein Host sein Skript füttern will.

Siehe auch: https://blog.dnaber.de/2010/kontaktform ... chensalat/

Mork vom Ork
PostRank 9
PostRank 9
Beiträge: 2557
Registriert: 08.07.2008, 11:07
Wohnort: Aufm Friedhof.

Beitrag von Mork vom Ork » 12.02.2010, 11:37

Pfauli hat geschrieben:
Zitat vom Support hat geschrieben:Wir haben Ihr Anliegen überprüft und empfehlen Ihnen, in Ihrem Browser die Zeichensatzoptionen ebenfalls zu überprüfen. Da Sie UTF-8 in Ihrem Kontaktformular definiert haben, jedoch Ihre Besucher vermutlich den Standard-Zeichensatz für Windows "ISO-8859-1" verwenden
Die haben offensichtlich keine Ahnung von dem, was sie schreiben.
Wenn ich jetzt meiner Kontakt-Seite den "charset=iso-8859-1" zuweise, und jemand schreibt mir und hat "charset=utf-8", dann habe ich doch das gleiche Problem in Grün, oder nicht?
Das wäre ein treffender Einwand gegen die Behauptung deines Hosters, wenn auch in der Praxis letztlich falsch. Tatsächlich ist es so, dass Browser sich automatisch auf die verwendete Kodierung einstellen - die Geschichte von den Browsern, die auf den angeblichen Windows-Standard-Zeichensatz iso-8859-1 (auch falsch, Windows verwendet windows-1252) festgelegt wären, ist hanebüchener Unsinn.
(Ich wusste gar nicht, dass das damit etwas zu tun hat und dachte immer die META-Zuweisung meiner Page ist Feder führend...) :bad-words:
Prinzipiell richtig, allerdings überschreibt die Angabe im HTTP-Protokoll das, was per <meta> als HTTP-Ersatz (daher <meta http-equiv=...) angegeben wird. Das solltest du bei einer Änderung beachten.

Das Problem dürfte bei dir schlichtweg sein, dass das Formular verarbeitende Skript die Daten mit der falschen Kodierungsangabe in der E-Mail sendet (auch da gibt es ein Content-Type mit charset-Attribut).

Da die ihr Skript nicht ändern wollen oder können: Schau in deinen Formular-E-Mails nach, welche Kodierung dort angegeben ist und verwende dieselbe Kodierung in deiner Formularseite.

Pfauli
PostRank 5
PostRank 5
Beiträge: 223
Registriert: 12.05.2009, 17:55

Beitrag von Pfauli » 12.02.2010, 12:17

Mal rein hypothetisch:

A)Meine Page ist auf das Charset Attribut: UTF-8 eingestellt
B)Die Mails des Kontaktfomulares werden aber mit dem Charset Attribut: ISO-8859-1 gesendet

____________________________

So, wie ihr mir mein Problem schildert, ist das Charset meiner Page nicht dominat, sondern das des Mail-Formulares. Ändere ich jetzt meine Page auf ISO, würde ich dann eine Dummheit begehen, weil das UTF-8 das eigentlich aktuell gängige Charset ist, oder hätte ich keine Auswirkungen? (Obgleich ... würde ich es nicht ändern, würdet ihr sicherlich zurecht sagen: "Dann lebe mit dem Buchstabensalat")

___________________________

Ein weiterer Gedanke: Ich erhalte meine Mails via Outlook. Liegt es vielleicht an meinem Outlook, was standartisiert auf ISO eingestellt ist?

___________________________

PS: So langsam leuchtet mir ein, warum viele Supportdienste nie die Zitate der Anfragenden User an die Antwortmails hängen :wink:

Warum hat uns Jacob Grimm das blos damals angetan... dabei hat sein Name nicht einmal einen einzigen Umlaut :bad-words:
Hier könnte ihre Werbung stehen!

ishmael
PostRank 4
PostRank 4
Beiträge: 101
Registriert: 18.04.2009, 09:59

Beitrag von ishmael » 12.02.2010, 13:51

Das hat nichts mit Dominanz zu tun, sondern mit unterschiedlichen "Erwartungen".

Ich denke, dass das verarbeitende Skript deines Hosters davon ausgeht, die Daten lägen in ISO-8898-1 vor, das tun sie aber nicht, wenn dein HTML in UTF-8 kodiert ist.

Gibt es in Outlook die Möglichkeit den Quelltext der E-Mail anzeigen zu lassen? Such darin nach der Zeile

Code: Alles auswählen

Content-Type&#58; .../...; charset=XY
um erstmal sicher zu gehen, welche Kodierung das Skript nutzt.

Entweder du stellst deine ganze Seite dann nach dieser Kodierung um, oder du versuchst es mit dem Attribut 'accept-charset="XY"' für das Form-Element.
Hier bin ich mir allerdings nicht sicher, ob die Browser sich danach richten, wenn der in accept-charset angegebne Wert von dem im HTTP-header abweicht.

E-Mailprogramme richten sich in der Regel nach dem Zeichensatz, der im E-Mailheader angegeben ist. Wenn keiner mitgegeben verwenden sie den eingestellten Standardzeichensatz.

Pfauli
PostRank 5
PostRank 5
Beiträge: 223
Registriert: 12.05.2009, 17:55

Beitrag von Pfauli » 12.02.2010, 16:52

Ich habe einmal nachgesehen, und ihr habt wohl Recht.
Und zwar kann ich bei Outlook unter Aktionen ---> andere Aktionen ---> Codierung mir unendlich viele Codierung zur Ansicht wählen. Nun habe ich dort von Westeuropäisch (Windows) auf UTF-8 umgestellt (explizit für diese eine geöffnete Mail) und siehe da, Umlaute werden normal geschrieben.

Sicherlich nicht die saubere Lösung meines Problems, aber halbwegs vertretbar, denn kann ich Kunden antworten ohne einen Buchstabensalat zu haben. Fraglich bleibt für mich jedoch, mit welcher Codierung meine Mail dann wieder raus geht.

Anyway, das muss ich alleine ab hier heraus kriegen, denke ihr habt mir eine Menge weiter geholfen, wo und wie ich suchen muss.

Vielen Dank dafür!
Hier könnte ihre Werbung stehen!

Mork vom Ork
PostRank 9
PostRank 9
Beiträge: 2557
Registriert: 08.07.2008, 11:07
Wohnort: Aufm Friedhof.

Beitrag von Mork vom Ork » 12.02.2010, 19:42

Pfauli hat geschrieben:Sicherlich nicht die saubere Lösung meines Problems, aber halbwegs vertretbar, denn kann ich Kunden antworten ohne einen Buchstabensalat zu haben. Fraglich bleibt für mich jedoch, mit welcher Codierung meine Mail dann wieder raus geht.
In der richtigen, darum brauchst du dir keine Gedanken machen. Sobald dein E-Mail-Programm die Texte richtig anzeigt, kann es sie auch sonst richtig weiterverarbeiten, einschließlich des Weitersendens.
Anyway, das muss ich alleine ab hier heraus kriegen, denke ihr habt mir eine Menge weiter geholfen, wo und wie ich suchen muss.
Da dein Outlook die Formular-Mail wohl als &#8222;Westeuropäisch (Windows)&#8220; identifiziert hat, füge dem <form>-Element erstmal das Attribut accept-charset="windows-1252,iso-8859-1" hinzu. Falls die meisten Anfragen dann korrekt bei dir aufschlagen, belasse es dabei &#8211; wie du noch vereinzelt auftretenden fehlerhaften Mails Outlook-seitig von Hand korrigieren kannst, hast du ja schon selbst rausgefunden.

Pfauli
PostRank 5
PostRank 5
Beiträge: 223
Registriert: 12.05.2009, 17:55

Beitrag von Pfauli » 13.02.2010, 17:39

Mork vom Ork hat geschrieben:accept-charset="windows-1252,iso-8859-1"
Ich baue gerade an meinen Seiten und werde das einmal einbauen.
Wäre ja echt klasse, wenn es funktioniert.

Hab vielen Dank!
Hier könnte ihre Werbung stehen!

mgutt
PostRank 10
PostRank 10
Beiträge: 3206
Registriert: 08.03.2005, 13:13

Beitrag von mgutt » 14.02.2010, 00:14

Pfauli hat geschrieben:Ich habe einmal nachgesehen, und ihr habt wohl Recht.
Und zwar kann ich bei Outlook unter Aktionen ---> andere Aktionen ---> Codierung mir unendlich viele Codierung zur Ansicht wählen. Nun habe ich dort von Westeuropäisch (Windows) auf UTF-8 umgestellt (explizit für diese eine geöffnete Mail) und siehe da, Umlaute werden normal geschrieben.
Die Autoerkennung von Outlook nimmt aber den Zeichensatz, der im Email-Header steht. Schau mal in den Header, wie bereits gesagt wurde. Und wenn da ISO steht, muss der Hoster sein Email-Script anpassen oder Du den Zeichensatz der Seite, wo Dein Kontaktformular steht.
Ich kaufe Dein Forum!
Kontaktdaten

Pfauli
PostRank 5
PostRank 5
Beiträge: 223
Registriert: 12.05.2009, 17:55

Beitrag von Pfauli » 15.02.2010, 17:46

Pfauli hat geschrieben:
Mork vom Ork hat geschrieben:accept-charset="windows-1252,iso-8859-1"
Ich baue gerade an meinen Seiten und werde das einmal einbauen.
Wäre ja echt klasse, wenn es funktioniert.

Hab vielen Dank!
Ich habe das jetzt einmal angewendet und auch getestet, leider erfolglos.
Mir scheint, es bleibt mir keine andere Wahl, entweder Buchstabensalat zu haben, oder aber die Webseite auf ISO umzustellen.

Es es okay, wenn man alle Webseite auf UTF-8 stehen hat, aber nur die Kontakt-Seite auf ISO? Mir ist bewusst, dass es keine "saubere" Lösung ist, aber im Grunde auch nicht schlimm,oder?

@mgutt

Der Hoster will und kann das Script nicht umändern, denn er selbst bedient sich nur einer Applikation, die er aus irgend einem englischen Partnerunternhemen bekommt. Das hatte ich schon erfragt und wurde abgewiesen. Ob es an Bequemlichkeit liegt, kann ich nur unterstellen ... :x
Hier könnte ihre Werbung stehen!

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag