Sonderzeichen in Mails
scorn
- php
Hallo,
vorab: Entschuldigung, was jetzt kommt ist eine Anfängerfrage und so aber ich muss zu meiner Verteidigung sagen, dass ich mich bereits bei php.net in den comments umgesehen habe, mich über Mime-types informiert hab, hier gesucht habe, rumprobiert habe und alles, was so in meiner Macht stand.
Aber ich kriegs trotzdem nicht hin:
Ich habe ein Kontaktformular, der Zeichensatz ist utf-8,
von dort sende ich eine Plain-Text-Email an meine Adresse,
aber die Umlaute werden verwurstet. Ich habe htmlentities() benutzt, dann versucht im Header verschiedene Charsets zu spezifieren usw. usf.
Wenn, ich htmlentities verwendet habe, sind die undecodiert angekommen, wenn ich versucht habe, es mit Charsets zu regeln, hab ich Zeichen erhalten, die ich vorher noch nicht gesehn habe...
Ich wäre wirklich glücklich, wenn mir jemand einfach sagen könnte, was ich in den Header schreiben muss oder wo ich das finde, damit Umlaute vernünftig angezeigt werden.
vielen vielen Dank,
scorn
hi,
Ich habe ein Kontaktformular, der Zeichensatz ist utf-8,
dann versuch mal, die entsprechende umkehrfunktion zu verwenden:
utf8_decode()
"This function decodes data , assumed to be UTF-8 encoded, to ISO-8859-1."
http://de.php.net/manual/de/function.utf8-decode.php
gruss,
wahsaga
Hallo!
utf8_decode()
"This function decodes data , assumed to be UTF-8 encoded, to ISO-8859-1."
Statt probieren, frag ich einfach mal: Soll ich das vor oder nach htmlentities() machen?
danke!
scorn
Nach einigem Rumprobieren:
Beides funktioniert nicht.
Die Funktion hat eigentlich gar keinen Effekt, wieso auch: Wenn ich mit htmlentities() zu utf-8 kodiere, habe ich den Code ü , in iso-8859-1 aber auch. das hilft mir aber nicht, da ich mich wenig mit Zeichensätzen (noch weniger mit unicode) und wenig mit PHP auskenne. Aber vor allem, was Mails betrifft, weiß ich nicht gut Bescheid.
Also, bitte, ich brauch detaillierte Hilfe....
Das Script könnt ihr übrigens hier einsehen: http://sv.stealthlogin.de/kontakt.txt
und laufend hier: http://sv.stealthlogin.de/index.php?will=kontakt
Grüße,
scorn
hi,
Nach einigem Rumprobieren:
Beides funktioniert nicht.
Die Funktion hat eigentlich gar keinen Effekt, wieso auch: Wenn ich mit htmlentities() zu utf-8 kodiere, habe ich den Code ü , in iso-8859-1 aber auch. das hilft mir aber nicht, da ich mich wenig mit Zeichensätzen (noch weniger mit unicode) und wenig mit PHP auskenne. Aber vor allem, was Mails betrifft, weiß ich nicht gut Bescheid.
ich kapiere gar nicht, warum du bei einer mail im format text/plain überhaupt htmlentites() anwenden willst?
htmlentities() ist doch dafür da, z.b. eine spitze klammer < in < umzuwandeln, damit sie vom browser nicht als eröffnen eines tags angesehen wird.
bei text/plain bleibt &lgt; aber < - es _muss_ also < im text stehen, wenn es auch wie < aussehen soll.
mein tipp: lass dir erstmal per echo den text ausgeben (anstatt ihn direkt per mail() zu verschicken), so wie er vom formular übergeben wird - und sieh dir dann die ausgabe im _quelltext_ an, nicht so wie sie im browser interpretiert wird.
probiere das selbe nochmal, nachdem du utf8_decode() darauf angewandt hast, _ohne_ den text mit htmlentities() oder ähnlichem zu behandeln.
was steht in diesen beiden fällen im queltext?
gruss,
wahsaga
Hi,
das hab ich bereits getan, das Ergebnis war folgendes
Eingabe: lälälä
Ausgabe ohne utf_decode: lälälä
Ausgabe mit: l?l?R>
In der Email kams dann aber richtig rüber,
ich lass also einfach das htmlentities weg, wie gesagt, ich kenn mich nicht damit aus, wenn du sagst man brauch es nicht, ok :)
danke schön,
noob
Wahsaga, juhuuuuuuuuu,
was mit deiner Seite wieder?
Der Juhu-Mensch