utf-8 und Mailformular
ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
http://40296.webtest.goneo.de/kontakt.php
Meine Seiten sind inzwischen alle inutf-8 codiert.
Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche Zeichen.
Wie kann ich das vermeiden?
Danke für Tipps
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche Zeichen.
>
> Wie kann ich das vermeiden?
Im Mail-Header die Kodierung übergeben.
--
Blubb
Re: utf-8 und Mailformular
Werner Partner schrieb:
> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
> http://40296.webtest.goneo.de/kontakt.php
>
> Meine Seiten sind inzwischen alle inutf-8 codiert.
>
> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche Z=
eichen.
>
> Wie kann ich das vermeiden?
Fuer die Mail den richtigen Charset angeben. Evt. zeigtst du uns mal
deine eine mail() Zeile und die Wertte fuer die einzelnen Parameter.
Dazu vergleicht mann dann die Mail Header welche der MUA dann bekommt.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche Zeichen.
>
> Wie kann ich das vermeiden?
Das ist wie beim Browser. Du must dem Empfänger (E-Mail Client) über weitere
Header den Content-Type + Charset mitteilen. Bei UTF-8 auch noch
Content-Transfer-Encoding mit 8bit (,oder besser, den Text (Mailbody)
quoted-printable encodioeren und dieses dann im Header angeben).
Gruß
Carsten
Re: utf-8 und Mailformular
Werner Partner schrieb:
> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
> http://40296.webtest.goneo.de/kontakt.php
Gerade mal getestet. Was ist angekommen? Vor allem der Header
interessiert mich.
> Meine Seiten sind inzwischen alle inutf-8 codiert.
Meine auch.
> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche Zeichen.
Bei mir wird auch UTF-8 verschickt, und alle Zeichen kommen korrekt als
UTF-8 an
> Wie kann ich das vermeiden?
Indem Du den richten Content-Type mitschickst und/oder die Daten mit
iconv() vorher in den gewünschten Zeichensatz konvertierst.
Gruß. Claus
Re: utf-8 und Mailformular
Joerg Behrens schrieb:
> Werner Partner schrieb:
>> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
>> http://40296.webtest.goneo.de/kontakt.php
>>
>> Meine Seiten sind inzwischen alle inutf-8 codiert.
>>
>> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
>> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche
>> Zeichen.
>>
>> Wie kann ich das vermeiden?
>
> Fuer die Mail den richtigen Charset angeben. Evt. zeigtst du uns mal
> deine eine mail() Zeile und die Wertte fuer die einzelnen Parameter.
Bei mir steht das:
if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], "From: "
.. $_POST['From'])) {
echo $this->mail_ok;
} else {
echo $this->mail_err;
}
Da muss jetzt wahrscheinlich noch irgendwas mit charset dazu.
Ich könnte natürlich auf php.net schauen - aber jetzt muss ich erst mal
weg ...
Grüße
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> Joerg Behrens schrieb:
>> Werner Partner schrieb:
>>> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
>>> http://40296.webtest.goneo.de/kontakt.php
>>>
>>> Meine Seiten sind inzwischen alle inutf-8 codiert.
>>>
>>> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
>>> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche=
>>> Zeichen.
>>>
>>> Wie kann ich das vermeiden?
>>
>> Fuer die Mail den richtigen Charset angeben. Evt. zeigtst du uns mal
>> deine eine mail() Zeile und die Wertte fuer die einzelnen Parameter.
>
> Bei mir steht das:
> if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], "From: " =
=2E
> $_POST['From'])) {
> echo $this->mail_ok;
> } else {
> echo $this->mail_err;
> }
*Grummel*.
1. Da wir nicht hellsehen koennen was genau in den Variablen drin steht
liefere uns in Zukunft diese Info mit.
2. Obiger Code ist eine SPAM Schleuder und laedt zum Missbrauch ein.
Unschuldige muessen darunter dann leiden.
Lese mal den Thread "register_globals off - Anfaenger Problem" vom 15.8
aus dieser Gruppe.
> Da muss jetzt wahrscheinlich noch irgendwas mit charset dazu.
> Ich könnte natürlich auf php.net schauen - aber jetzt muss ich erst=
mal
> weg ...
Also eigentlich haettest du da mal nachlesen sollen bevor du hier nen
Thread los trittst. Aber auch hier ist eigentlich Kenntnis des
Protokolls gefragt und weniger PHP Knowhow. Einzig was man den Manual
entnehmen muss ist welcher Parameter die Header aufnimmt. Im Falle von
PHP ist dieses der 4.
http://de3.php.net/manual/en/function.mail.php
Sofern du dich an dein HTTP und UTF8 Problem erinnerst werden dir die
paralleln auffallen.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: utf-8 und Mailformular
On Tue, 21 Aug 2007, Joerg Behrens wrote:
> Also eigentlich haettest du da mal nachlesen sollen bevor du hier nen Thread
> los trittst. Aber auch hier ist eigentlich Kenntnis des Protokolls gefragt und
> weniger PHP Knowhow. Einzig was man den Manual entnehmen muss ist welcher
> Parameter die Header aufnimmt. Im Falle von PHP ist dieses der 4.
Bei mir hat das nicht geklappt: habe ich charset UTF-8 in die Header
reingeschrieben, dann wurde jedes Nicht-ASCII-Zeichen im Text als zwei
ISO-Zeichen aufgefasst und dementsprechend als 2 UTF-8-Zeichen (also 4
Bytes) versandt. Die Lösung war schließlich:
mb_language ('uni');
mb_internal_encoding ('UTF-8');
if (mb_send_mail ('info [at] example.com', "Kontaktformular: $T[Thema]", $text,
"Reply-To: $T[Email]\nX-Our-Private-Originator-IP: $_SERVER[REMOTE_ADDR]
($_SERVER[REMOTE_HOST])")) {
mit einem Array T der eingebenen Formulardaten und unter Verwendung eines
privaten E-Mail-Headerfeldes für die IP des Absenders zur Dokumentation.
Ich erinnere mich, ziemlich viele Versuche gebraucht zu haben, bis es
geklappt hat, weil die Doku in php.net recht spärlich ist. Beispielsweise
habe ich bis heute nicht rausgebracht, warum mb_language und
mb_internal_encoding anscheinend *beide* nötig sind. Oder warum
htmlspecialchars für UTF-8-Strings nicht funktioniert, obwohl die davon
ersetzten Zeichen alles ASCII-Zeichen sind, also in ISO-8859 und UTF-8
gleich aussehen.
Vollends mysteriös blieb, welche \n durch \r\n ersetzt werden dürfen, müssen
oder nicht dürfen. Ich bin jetzt dabei verblieben, im Body der Mail nur \r\n
zu haben (und mich darauf zu verlassen, dass aus dem Eingabetext ebenfalls
nur \r\n kommen) und zwischen den Headern nur \n; das scheint zu gehen.
Lieber hätte ich in der Doku etwas zu dem Thema gelesen.
--
Helmut Richter
Re: utf-8 und Mailformular
Joerg Behrens schrieb:
> Werner Partner schrieb:
>> Joerg Behrens schrieb:
>
> Also eigentlich haettest du da mal nachlesen sollen bevor du hier nen
> Thread los trittst. Aber auch hier ist eigentlich Kenntnis des
> Protokolls gefragt und weniger PHP Knowhow. Einzig was man den Manual
> entnehmen muss ist welcher Parameter die Header aufnimmt. Im Falle von
> PHP ist dieses der 4.
>
> http://de3.php.net/manual/en/function.mail.php
>
> Sofern du dich an dein HTTP und UTF8 Problem erinnerst werden dir die
> paralleln auffallen.
Es ist nicht zu übersehen. Ich denke, auf Grund des Hinweises kann ich
meine Mailfunktion gut überarbeiten.
Danke
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Joerg Behrens schrieb:
> Werner Partner schrieb:
>> Joerg Behrens schrieb:
>>> Werner Partner schrieb:
>>>> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
>>>> http://40296.webtest.goneo.de/kontakt.php
>>>>
>>>> Meine Seiten sind inzwischen alle inutf-8 codiert.
>>>>
>>>> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
>>>> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche
>>>> Zeichen.
>>>>
>>>> Wie kann ich das vermeiden?
>>>
>>> Fuer die Mail den richtigen Charset angeben. Evt. zeigtst du uns mal
>>> deine eine mail() Zeile und die Wertte fuer die einzelnen Parameter.
>>
>> Bei mir steht das:
>> if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], "From: "
>> . $_POST['From'])) {
>> echo $this->mail_ok;
>> } else {
>> echo $this->mail_err;
>> }
>
> *Grummel*.
>
> 1. Da wir nicht hellsehen koennen was genau in den Variablen drin steht
> liefere uns in Zukunft diese Info mit.
> 2. Obiger Code ist eine SPAM Schleuder und laedt zum Missbrauch ein.
> Unschuldige muessen darunter dann leiden.
>
Ich bin mal nach deinem Link vorgegangen und habe folgendes gemacht:
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: ' . $_POST['From'] . "\r\n";
if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], $headers)) {
Die ersten drei Parameter enthalten eben Adresse, Subject und die
Nachricht. Das Ergebnis des Codes oben ist jetzt, dass MIME-Version: 1.0
tatsächlich im header steht, der Rest steht aber in der Mail, es sieht
also so aus:
Content-type: text/html; charset=iso-8859-1
From: kairos [at] sonoptikon.de
Message-Id: <20070821151100.05BE561C63 [at] w6.goneo.de>
Date: Tue, 21 Aug 2007 17:11:00 +0200 (CEST)
Darunter kommen dann die eigentlichen Mail-Informationen. Aber all das,w
as da steht (auch Message-Id und Date) gehören nicht in den Mail-Inhalt.
Sie sollten Bestandteil des Kopfes sein. Vor der Änderung sdtand nichts
davon in der Mail.
Natürlich werden die Soinderzeichen in utf-8 übertragen, klar -
iso-8859-1 steht ja auch nicht im Header.
Aber ich werde selbst auch noch ein bisschen rumprobieren ...
Grüße
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> Joerg Behrens schrieb:
>> Werner Partner schrieb:
>>> Joerg Behrens schrieb:
>>>> Werner Partner schrieb:
>>>>> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
>>>>> http://40296.webtest.goneo.de/kontakt.php
>>>>>
>>>>> Meine Seiten sind inzwischen alle inutf-8 codiert.
>>>>>
>>>>> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
>>>>> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässlic=
he
>>>>> Zeichen.
>>>>>
>>>>> Wie kann ich das vermeiden?
>>>>
>>>> Fuer die Mail den richtigen Charset angeben. Evt. zeigtst du uns mal=
>>>> deine eine mail() Zeile und die Wertte fuer die einzelnen Parameter.=
>>>
>>> Bei mir steht das:
>>> if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], "From: =
>>> " . $_POST['From'])) {
>>> echo $this->mail_ok;
>>> } else {
>>> echo $this->mail_err;
>>> }
>>
>> *Grummel*.
>>
>> 1. Da wir nicht hellsehen koennen was genau in den Variablen drin
>> steht liefere uns in Zukunft diese Info mit.
>> 2. Obiger Code ist eine SPAM Schleuder und laedt zum Missbrauch ein.
>> Unschuldige muessen darunter dann leiden.
>>
>
> Ich bin mal nach deinem Link vorgegangen und habe folgendes gemacht:
>
> $headers =3D 'MIME-Version: 1.0' . "\r\n";
> $headers .=3D 'Content-type: text/html; charset=3Diso-8859-1' . "\r=
\n";
> $headers .=3D 'From: ' . $_POST['From'] . "\r\n";
> if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], $headers)=
) {
> Die ersten drei Parameter enthalten eben Adresse, Subject und die
> Nachricht. Das Ergebnis des Codes oben ist jetzt, dass MIME-Version: 1.=
0
> tatsächlich im header steht, der Rest steht aber in der Mail, es sieh=
t
Wenn Header- Angaben nicht als als Teil der Header gesendet werden
sondern als Teil des Bodys angezeigt werden dann hat sich ein \n oder
sonstiges Trennzeichen eingeschlichen. Alternativ schau mal ob der
Mailer auf deinem Webserver besser mit \n klar kommt als mit \r\n.
> also so aus:
>
> Content-type: text/html; charset=3Diso-8859-1
Warum du hier nun 8859 angibt ob wohl du doch UF8 haben moechtest und
laut deiner Aussage dein subject und msg auch UTF8 enthalten ist mir
schleierhaft.
Darum nochmal. Die Angaben in den Headern sorgen *nicht* dafuer das die
Inhalte konvertiert werden, sondern geben einzig und alleine
informationen ueber den Body aus so das sich die verarbeitende Software
(Mail Programm) darauf einstellen kann.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> $headers = 'MIME-Version: 1.0' . "\r\n";
> $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
^^^^^^^^^^^^^^^^^^
Da steht, dass die Mail im Zeichensatz ISO-8859-1 verfasst ist. Da sie
in Wirklichkeit jedoch UTF-8 enthält, kommt beim Empfänger Müll raus.
Setze da oben mal charset=utf-8 ein. Dann klappt's auch.
Gruß. Claus
Re: utf-8 und Mailformular
Werner Partner wrote:
> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
> http://40296.webtest.goneo.de/kontakt.php
>
> Meine Seiten sind inzwischen alle inutf-8 codiert.
>
> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche Zeichen.
>
> Wie kann ich das vermeiden?
Du gibst stellst die folgenden beiden Kopffelder folgendermaßen ein:
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bei Content-Type kommt es auf charset=UTF-8 an, der Typ kann auch z.B.
text/html sein.
Gruß,
Oliver
Re: utf-8 und Mailformular
Joerg Behrens schrieb:
> Werner Partner schrieb:
>> Joerg Behrens schrieb:
>>> Werner Partner schrieb:
>>>> Joerg Behrens schrieb:
>>>>> Werner Partner schrieb:
>>>>>> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
>>>>>> http://40296.webtest.goneo.de/kontakt.php
>>>>>>
>>>>>> Meine Seiten sind inzwischen alle inutf-8 codiert.
>>>>>>
>>>>>> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
>>>>>> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche
>>>>>> Zeichen.
>>>>>>
>>>>>> Wie kann ich das vermeiden?
>>>>>
>>>>> Fuer die Mail den richtigen Charset angeben. Evt. zeigtst du uns
>>>>> mal deine eine mail() Zeile und die Wertte fuer die einzelnen
>>>>> Parameter.
>>>>
>>>> Bei mir steht das:
>>>> if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], "From:
>>>> " . $_POST['From'])) {
>>>> echo $this->mail_ok;
>>>> } else {
>>>> echo $this->mail_err;
>>>> }
>>>
>>> *Grummel*.
>>>
>>> 1. Da wir nicht hellsehen koennen was genau in den Variablen drin
>>> steht liefere uns in Zukunft diese Info mit.
>>> 2. Obiger Code ist eine SPAM Schleuder und laedt zum Missbrauch ein.
>>> Unschuldige muessen darunter dann leiden.
>>>
>>
>> Ich bin mal nach deinem Link vorgegangen und habe folgendes gemacht:
>>
>> $headers = 'MIME-Version: 1.0' . "\r\n";
>> $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
>> $headers .= 'From: ' . $_POST['From'] . "\r\n";
>> if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'],
>> $headers)) {
>> Die ersten drei Parameter enthalten eben Adresse, Subject und die
>> Nachricht. Das Ergebnis des Codes oben ist jetzt, dass MIME-Version:
>> 1.0 tatsächlich im header steht, der Rest steht aber in der Mail, es
>> sieht
>
> Wenn Header- Angaben nicht als als Teil der Header gesendet werden
> sondern als Teil des Bodys angezeigt werden dann hat sich ein \n oder
> sonstiges Trennzeichen eingeschlichen. Alternativ schau mal ob der
> Mailer auf deinem Webserver besser mit \n klar kommt als mit \r\n.
>
>
>> also so aus:
>>
>> Content-type: text/html; charset=iso-8859-1
>
> Warum du hier nun 8859 angibt ob wohl du doch UF8 haben moechtest und
> laut deiner Aussage dein subject und msg auch UTF8 enthalten ist mir
> schleierhaft.
Mein Newsreader und Mailclient macht 8859, aber meine Internetpräsenz
utf-8. Aus diesem Grund möchte ich aus der Internetpräsenz heraus als
iso-8859 verschicken.
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> Mein Newsreader und Mailclient macht 8859, aber meine Internetpräsenz
> utf-8. Aus diesem Grund möchte ich aus der Internetpräsenz heraus als
> iso-8859 verschicken.
Kann dein Mailclient kein UTF-8? Wenn du nicht auf eine neue
Version/andere Software wechseln möchtest (was ich für die bessere Wahl
halte, da doch eigentlich alle neueren Modelle inzwischen UTF-8 können
sollten), musst du deine Daten, die die Website liefert wieder in
ISO-8859-1 umwandeln. Die Funktion utf8_decode ist hierbei dein Freund.
Gruß, Stefan
PS: Ich hab gerade geschaut, du benutzt Thunderbird. Der kann aber sehr
wohl mit UTF-8 umgehen!
Re: utf-8 und Mailformular
Stefan Jonas schrieb:
> Werner Partner schrieb:
>
>> Mein Newsreader und Mailclient macht 8859, aber meine Internetpräsen=
z
>> utf-8. Aus diesem Grund möchte ich aus der Internetpräsenz heraus =
als
>> iso-8859 verschicken.
>
> Kann dein Mailclient kein UTF-8? Wenn du nicht auf eine neue
> Version/andere Software wechseln möchtest (was ich für die bessere =
Wahl
> halte, da doch eigentlich alle neueren Modelle inzwischen UTF-8 könne=
n
> sollten), musst du deine Daten, die die Website liefert wieder in
> ISO-8859-1 umwandeln. Die Funktion utf8_decode ist hierbei dein Freund.=
Alternativ geht auch iconv() was auch in jedem PHP Vorhanden sein
sollte. Nicht so oft vorhanden und auch aus anderen gruenden sollge
macht nicht mehr auf ext/recode zurueck greifen.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> ich benutze ein Formular, mit dem ich Daten verschicke, z.B. hier
> http://40296.webtest.goneo.de/kontakt.php
>
> Meine Seiten sind inzwischen alle in utf-8 codiert.
>
> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche Zeichen.
>
> Wie kann ich das vermeiden?
>
Ich hab's jetzt so gelöst:
ich verschicke die Daten natürlich per utf-8, bei meinem thunderbird
habe ich beim Datenempfang ebenfalls UTF-8 eingestellt.
So scheint es zu funktionieren.
Danke für die Hinweise
(vielelicht kommt ja noch was nach ...)
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> Ich hab's jetzt so gelöst:
> ich verschicke die Daten natürlich per utf-8, bei meinem thunderbird
> habe ich beim Datenempfang ebenfalls UTF-8 eingestellt.
Das ist keine Lösung, sondern ein ziemlich schmutziger Workaround.
Warum probierst Du nicht mal die _echten_ Lösungen aus, die wir Dir hier
geben? Was genau hast Du an <5j0peoF3rf8bnU1 [at] mid.individual.net> nicht
verstanden?
Gruß. Claus
Re: utf-8 und Mailformular
Claus Reibenstein schrieb:
> Werner Partner schrieb:
>
>> Ich hab's jetzt so gelöst:
>> ich verschicke die Daten natürlich per utf-8, bei meinem thunderbird
>> habe ich beim Datenempfang ebenfalls UTF-8 eingestellt.
>
> Das ist keine Lösung, sondern ein ziemlich schmutziger Workaround.
>
> Warum probierst Du nicht mal die _echten_ Lösungen aus, die wir Dir hier
> geben? Was genau hast Du an <5j0peoF3rf8bnU1 [at] mid.individual.net> nicht
> verstanden?
Die Mails gehen ja nur an mich. Und sie sind ja wohl automatisch in
UTF-8 kodiert. Ist es da nicht sinnvoll, tatsächlich den thunderbird
lesend auf utf-8 zu stellen. Die andern Mails kommen damit auch korrekt an.
Wenn ich Mails aus thunderbird verschicke, dann per iso-8859-1, das ist
ja auch die Ausgangseinstellung.
Ist das nicht eine sinnvolle Lösung?
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Hallo Werner,
Werner Partner schrieb:
> Die Mails gehen ja nur an mich. Und sie sind ja wohl automatisch in
> UTF-8 kodiert. Ist es da nicht sinnvoll, tatsächlich den thunderbird
> lesend auf utf-8 zu stellen. Die andern Mails kommen damit auch korrekt an.
>
> Wenn ich Mails aus thunderbird verschicke, dann per iso-8859-1, das ist
> ja auch die Ausgangseinstellung.
>
> Ist das nicht eine sinnvolle Lösung?
Nein. Du solltest im Header der Mail den Zeichensatz einstellen, den du
auch verwendest. Stellst du Thunderbird auf UTF-8 ein, wird die
Einstellung aus der Mail einfach überschrieben.
Wenn du nun schon im Header der Mail angibst, dass du UTF-8 verwendest
musst du auch nicht erst dein Mail-Programm konfigurieren.
Gruß, Stefan
Re: utf-8 und Mailformular
Stefan Jonas schrieb:
> Hallo Werner,
>
>
> Werner Partner schrieb:
>
>> Die Mails gehen ja nur an mich. Und sie sind ja wohl automatisch in
>> UTF-8 kodiert. Ist es da nicht sinnvoll, tatsächlich den thunderbird
>> lesend auf utf-8 zu stellen. Die andern Mails kommen damit auch
>> korrekt an.
>>
>> Wenn ich Mails aus thunderbird verschicke, dann per iso-8859-1, das
>> ist ja auch die Ausgangseinstellung.
>>
>> Ist das nicht eine sinnvolle Lösung?
>
> Nein. Du solltest im Header der Mail den Zeichensatz einstellen, den du
> auch verwendest. Stellst du Thunderbird auf UTF-8 ein, wird die
> Einstellung aus der Mail einfach überschrieben.
> Wenn du nun schon im Header der Mail angibst, dass du UTF-8 verwendest
> musst du auch nicht erst dein Mail-Programm konfigurieren.
Ja, ich hab jetzt ein bisschen rumprobiert. ich finde, dass die mail()
Funktion ziemlich empfindlich ist, was die Eingabe der Parameter betrifft.
Ich habe jetzt einen Header hinbekommen, in dem die From-Angabe und der
charset steht.
Meinen thunderbird habe ich jetzt wieder komplett auf iso umgestellt, so
wie es vorher war, und jetzt werden die Zeichen auch richtig dargestellt.
Was die Empfindlichkeit betrifft, hatte ich teilweise den Effekt, dass
die Header-Angaben aus unerklärlichem Grund in die Mail selbst gerutscht
sind, dann hatte ich eden Effekt, dass, nachdem ich das richtig
hinbekommen habe, plötzlich die Umbrüche im Text selbst nicht mehr stimmen.
Es scheint etwas damit zu tun zu haben, ob ich die texte mit ' oder mi "
begrenze. Im Moment sieht der Code so aus:
if (isset($_POST['Mail']) && $_POST['Mail'] != "") {
$header = 'Content-Type: text/html; charset=UTF-8' . "\n"
. 'From: ' . $_POST['From'];
if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], $header)) {
[...]
Die Texte im $header habe ich mit ' begrenzt, aber das \n muss in " stehen.
Msg sieht so aus:
$this->msg = "Name=" . $data['nachname'] ."\r\n"
. "Vorname=" . $data['vorname'] ."\r\n"
[...]
. "Nachricht=" . $data['nachricht'] ."\r\n";
Aber die Umbrüche werden plötzlich nicht mehr gemacht, weder mit \n,
noch mit \r\n.
Bevor ich den Header versorgt hatte, standen die Angaben untereinander,
jetzt stehen sie in einer Zeile. Das hat sicher etwas mit dem Aufbau der
Mail zu tun. Ich steige da nicht richtig durch, weil ich zu wenig
verstehe, wie eine solche Mail überhaupt zusammengesetzt wird.
Schlimm ist es nicht, wenn alles in einer Zeile steht, aber ich würde es
gerne wieder untereinander bekommen.
Bevor ich den Header versorgt hatte, ist mit \n ein doppelter
zeilenumbruch entstanden, d.h. zwischen den Angabenm stand jeweils eine
Leerzeile, die ich auch nicht wegbekommen habe.
Seltsam, seltsam, aber insgesamt eine herausforderung, das Thema besser
zu evrstehen. Möglicherweise vertragen sich ' und " nciht richtig ...
Grüße
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> [...] hatte ich eden Effekt, dass, nachdem ich das richtig
> hinbekommen habe, plötzlich die Umbrüche im Text selbst nicht mehr stimmen.
>
> $header = 'Content-Type: text/html; charset=UTF-8' . "\n"
¯¯¯¯¯¯¯¯¯
Das ist der Fehler. Hier sagst Du ihm, dass die Nachricht in HTML
codiert ist. Setze hier mal text/plain ein.
Gruß. Claus
Re: utf-8 und Mailformular
Werner Partner schrieb:
>Aber die Umbrüche werden plötzlich nicht mehr gemacht, weder mit \n, noch
>mit \r\n.
Falsch. Du siehst sie nur nicht.
>Content-Type: text/html; charset=UTF-8
^^^^
Na, fällt dir was auf? Damit kennzeichnest du den Inhalt logischerweise nicht
als Nur-Text, sondern als HTML. Zeilenumbrüche haben daher keine Bedeutung.
Leider ist der Thunderbird so großzügig, bei diesem "HTML-Dokument" überhaupt
etwas anzuzeigen, sonst wäre dir der Fehler wohl selber aufgefallen.
Du willst offenbar text/plain, also sag das auch so :-)
--
Wolfgang Fellger
Re: utf-8 und Mailformular
Wolfgang Fellger schrieb:
> Werner Partner schrieb:
>
>> Aber die Umbrüche werden plötzlich nicht mehr gemacht, weder mit \n, noch
>> mit \r\n.
>
> Falsch. Du siehst sie nur nicht.
>
>> Content-Type: text/html; charset=UTF-8
> ^^^^
>
> Na, fällt dir was auf? Damit kennzeichnest du den Inhalt logischerweise nicht
> als Nur-Text, sondern als HTML. Zeilenumbrüche haben daher keine Bedeutung.
> Leider ist der Thunderbird so großzügig, bei diesem "HTML-Dokument" überhaupt
> etwas anzuzeigen, sonst wäre dir der Fehler wohl selber aufgefallen.
> Du willst offenbar text/plain, also sag das auch so :-)
>
Danke, Claus und Wolfgang!
Das habe ich dann natürlich glatt übersehen. Wie gesagt, ich bin
eigentlich nicht wirklich im Thema und kämpfe mich so durch.
Jetzt muss ich nur noch dahinterkommen, wie ich hinbekomme, dass bei
"\n" nicht zwei Zeilenumbrüche gemacht werden, sondern nur einer.
Grüße
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
On Wed, 22 Aug 2007, Werner Partner wrote:
> Jetzt muss ich nur noch dahinterkommen, wie ich hinbekomme, dass bei "\n"
> nicht zwei Zeilenumbrüche gemacht werden, sondern nur einer.
Hast du das mit längeren Texten ausprobiert, bei denen viele \n unterwegs
vorkommen, verstreut und auch mehrere hintereinander?
--
Helmut Richter
Re: utf-8 und Mailformular
Helmut Richter schrieb:
> On Wed, 22 Aug 2007, Werner Partner wrote:
>
>> Jetzt muss ich nur noch dahinterkommen, wie ich hinbekomme, dass bei "\n"
>> nicht zwei Zeilenumbrüche gemacht werden, sondern nur einer.
>
> Hast du das mit längeren Texten ausprobiert, bei denen viele \n unterwegs
> vorkommen, verstreut und auch mehrere hintereinander?
>
Da bin ichgerade am Rumprobieren dran ...
Grüße
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Meiner Meinung nach liegtes gar nicht an der mail() - Funktion.
Sondern am Formular. Die Seite wird mit der meta-Angabe UTF-8
aufgebaut, schreibe einfach in das Formular:
<form action=3D"/kontakt.php" method=3D"post" accept-charset=3D"ISO-8859-1">
Dann werden keine UTF-8 zeichen gesendet
Grüsse.
Stephan.
On 21 Aug., 12:10, Werner Partner <kai... [at] sonoptikon.de> wrote:
> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hierhttp://4=
0296.webtest.goneo.de/kontakt.php
>
> Meine Seiten sind inzwischen alle inutf-8 codiert.
>
> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche Zei=
chen.
>
> Wie kann ich das vermeiden?
>
> Danke für Tipps
>
> Werner
>
> --
> --------------------------------------------------
> Dorothee & Werner Partner, 45699 Hertenhttp://www.sonoptikon.de
Re: utf-8 und Mailformular
fischel [at] nexgo.de schrieb:
> Meiner Meinung nach liegtes gar nicht an der mail() - Funktion.
> Sondern am Formular. Die Seite wird mit der meta-Angabe UTF-8
> aufgebaut, schreibe einfach in das Formular:
>
> <form action="/kontakt.php" method="post" accept-charset="ISO-8859-1">
>
> Dann werden keine UTF-8 zeichen gesendet
>
Das wäre die Antwort auf meine Frage gewesen.
Nun habe ich aber in den Kopf utf-9 geschrieben und jetzt kann mein
thunderbird die Mails auch wunderbar lesen.
Aber ich denke, ich sollte deine Mail mal auf die Halde legen, weil ich
genau das möglicherweise nochmal brauche.
Danke jedenfalls
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
fischel [at] nexgo.de schrieb:
> Meiner Meinung nach liegtes gar nicht an der mail() - Funktion.
> Sondern am Formular. Die Seite wird mit der meta-Angabe UTF-8
> aufgebaut, schreibe einfach in das Formular:
>
> <form action=3D"/kontakt.php" method=3D"post" accept-charset=3D"ISO-885=
9-1">
>
> Dann werden keine UTF-8 zeichen gesendet
Das ist wohl war, empfinde ich aber nicht als Loesung weil die Seite
welche die Daten nun validiert um diese bei Fehleingaben dann wieder
anzuzeigen diese konvertieren muss. Seine Webseiten sollen ja in UTF-8 se=
in.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: utf-8 und Mailformular
Joerg Behrens schrieb:
> fischel [at] nexgo.de schrieb:
>> Meiner Meinung nach liegtes gar nicht an der mail() - Funktion.
>> Sondern am Formular. Die Seite wird mit der meta-Angabe UTF-8
>> aufgebaut, schreibe einfach in das Formular:
>>
>> <form action="/kontakt.php" method="post" accept-charset="ISO-8859-1">
>>
>> Dann werden keine UTF-8 zeichen gesendet
>
> Das ist wohl war, empfinde ich aber nicht als Loesung weil die Seite
> welche die Daten nun validiert um diese bei Fehleingaben dann wieder
> anzuzeigen diese konvertieren muss. Seine Webseiten sollen ja in UTF-8
> sein.
Ich denke, so ist es auch!
Frage ist nur: Ich habe bei meinem Thunderbird iso-8859-15 eingestellt,
für eingehende und ausgehende Mail. Natürlich wurde die Nachricht von
meiner Webseite falsch dargestellt, war ja utf-8. Nachdem ich utf-8 in
den Header geschrieben habe, ist es richtig.
verstehe ich es richtig, dass es folgendermaßen ist:
Mein thunderbird liest und schreibt standardmäßig iso-8859-15, wenn eine
Mail ankommt, die definitiv (per Header ausgewiesen) utf-8 kodiert ist,
liest er auch utf-8.
Das wäre dann ja auch die beste und elegantest und damit auch korrekte
Lösung.
Grüße
werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> verstehe ich es richtig, dass es folgendermaßen ist:
>
> Mein thunderbird liest und schreibt standardmäßig iso-8859-15, wenn=
eine
> Mail ankommt, die definitiv (per Header ausgewiesen) utf-8 kodiert ist,=
> liest er auch utf-8.
Korrekt. Die Einstellung im Client ist nur dafür da, dass in der Mail
entsprechende Angaben fehlen.
MfG
Niels
--
| http://www.kolleg.de =B7 Das Portal der Kollegs in Deutschland |
| http://www.bsds.de =B7 BSDS Braczek Software- und DatenSysteme |
| Webdesign =B7 Webhosting =B7 e-Commerce =B7 Joomla! Content Management =
|
------------------------------------------------------------ ------
Re: utf-8 und Mailformular
Niels Braczek wrote:
> Korrekt. Die Einstellung im Client ist nur dafür da, dass in der Mail
^^^^
wenn?
> entsprechende Angaben fehlen.
--
Robert Riebisch
Bitte NUR in der Newsgroup antworten!
Please reply to the Newsgroup ONLY!
Re: utf-8 und Mailformular
Werner Partner schrieb:
> Joerg Behrens schrieb:
>> fischel [at] nexgo.de schrieb:
>>> Meiner Meinung nach liegtes gar nicht an der mail() - Funktion.
>>> Sondern am Formular. Die Seite wird mit der meta-Angabe UTF-8
>>> aufgebaut, schreibe einfach in das Formular:
>>>
>>> <form action=3D"/kontakt.php" method=3D"post" accept-charset=3D"ISO-8=
859-1">
>>>
>>> Dann werden keine UTF-8 zeichen gesendet
>>
>> Das ist wohl war, empfinde ich aber nicht als Loesung weil die Seite
>> welche die Daten nun validiert um diese bei Fehleingaben dann wieder
>> anzuzeigen diese konvertieren muss. Seine Webseiten sollen ja in UTF-8=
>> sein.
>
> Ich denke, so ist es auch!
>
> Frage ist nur: Ich habe bei meinem Thunderbird iso-8859-15 eingestellt,=
> für eingehende und ausgehende Mail. Natürlich wurde die Nachricht v=
on
> meiner Webseite falsch dargestellt, war ja utf-8. Nachdem ich utf-8 in =
> den Header geschrieben habe, ist es richtig.
>
> verstehe ich es richtig, dass es folgendermaßen ist:
>
> Mein thunderbird liest und schreibt standardmäßig iso-8859-15, wenn=
eine
> Mail ankommt, die definitiv (per Header ausgewiesen) utf-8 kodiert ist,=
> liest er auch utf-8.
Ich hege die Hoffnung das du nun zumind. weist wie es in der Theorie
funktioniert :).
Ich beglueckwuensche alle Teilnehmer in diesem und dem anderen Thread
fuer ihre Ausdauer. Es scheint sich ja gelohnt zu haben ;)
> Das wäre dann ja auch die beste und elegantest und damit auch korrekt=
e
> Lösung.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: utf-8 und Mailformular
Joerg Behrens schrieb:
> Werner Partner schrieb:
>> Joerg Behrens schrieb:
>
> Ich hege die Hoffnung das du nun zumind. weist wie es in der Theorie
> funktioniert :).
>
>
> Ich beglueckwuensche alle Teilnehmer in diesem und dem anderen Thread
> fuer ihre Ausdauer. Es scheint sich ja gelohnt zu haben ;)
>
Du weißt ja, Theorie ist, wenn man weiß, wie's funktioniert, aber es
geht trotzdem nicht. Praxis ist, wenn's funktioniert, aber wir wissen
nicht, warum. Wir verbinden Theorie und Praxis: Nichts funktioniert, und
wir wissen nicht warum.
Ganz oft ist es so, dass bei mir etwas funktioniert, aber ich weiß
nicht, warum.
Dann will ich verstehen, wie's funktioniert, was aber den Effekt hat,
dass es nicht mehr funktioniert.
Manchmal ist es dann so, dass mir jemand sagt, wie's geht. Ich verstehe
es zwar nicht, mache es aber so, und es funktioniert.
Am Ende dieses Lernprozesses habe ich meist etwas dazugelernt, und es
funktioniert auch ...
Grüße und auch von mir vielen Dank für die Ausdauer, auch bezüglich des
anderen Threads - Ihr wisst schon ... am Anfang wurde ja schon auf die
Parallelität hingewiesen. Ich denke, dass Thema utf-8 dürfte damit von
meiner Seite abgeschlossen sein.
Ich bitte in diesem Zusammenhang noch ein wenig um nachsicht: Ich bin
Psychotherapeut und kein Webdesigner. Meine Stärken liegen auf anderen
Gebieten. Aber ich gebe mir Mühe ;-)
Grüße
werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Joerg Behrens schrieb:
> Werner Partner schrieb:
>> Joerg Behrens schrieb:
>>> Werner Partner schrieb:
>>>> ich benutze ein Formular, mit dem ich Daten evrschicke, z.B. hier
>>>> http://40296.webtest.goneo.de/kontakt.php
>>>>
>>>> Meine Seiten sind inzwischen alle inutf-8 codiert.
>>>>
>>>> Wenn nun aus diesem Formular eine Mail vershcickt wird, ist diese
>>>> ebenfalls in utf-8 codiert und beim Empfänger entstehen hässliche
>>>> Zeichen.
>>>>
>>>> Wie kann ich das vermeiden?
>>>
>>> Fuer die Mail den richtigen Charset angeben. Evt. zeigtst du uns mal
>>> deine eine mail() Zeile und die Wertte fuer die einzelnen Parameter.
>>
>> Bei mir steht das:
>> if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], "From: "
>> . $_POST['From'])) {
>> echo $this->mail_ok;
>> } else {
>> echo $this->mail_err;
>> }
>
> *Grummel*.
>
> 2. Obiger Code ist eine SPAM Schleuder und laedt zum Missbrauch ein.
> Unschuldige muessen darunter dann leiden.
Das wäre nicht in meinem Sinn!
Bitte erklär mir, warum der Code eine Spamschleuder ist und wie ich das
ändern kann. Ich habe übrigens heute ein Pharma-Angebot über eines
meiner Formulare bekommen, möglicherweise genau der Effekt, den du
ansprichst - allerdings war es das erste Mal, dass sowas passiert ist -
zumindest, dass es bei mir angekommen ist.
Kann es sein, dass jemand solche Formular maschinell ausfüllt - wie
funktioniert das eigentlich?
Grüße
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> Joerg Behrens schrieb:
>
>> Werner Partner schrieb:
>>
>>> if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], "From: "
>>> . $_POST['From'])) {
>>
>> 2. Obiger Code ist eine SPAM Schleuder und laedt zum Missbrauch ein.
>> Unschuldige muessen darunter dann leiden.
>
> Bitte erklär mir, warum der Code eine Spamschleuder ist und wie ich das
> ändern kann.
Du gibst die Inhalte von $_POST direkt an mail() weiter. Prüfst Du die
Inhalte vorher ab? Wenn ja, ist alles in Ordnung. Wenn nicht: auf diesem
Wege kann man problemlos fremde Zieladressen einschleusen und damit
Deinen Server als Spamschleuder benutzen.
Auf <http://www.php-faq.de/q/q-sicherheit-parameter.html> kannst Du noch
ein bisschen mehr darüber erfahren.
> Ich habe übrigens heute ein Pharma-Angebot über eines
> meiner Formulare bekommen, möglicherweise genau der Effekt, den du
> ansprichst - allerdings war es das erste Mal, dass sowas passiert ist -
> zumindest, dass es bei mir angekommen ist.
Und vermutlich noch bei hundert Anderen, deren Adressen da mit
eingeschleust wurden.
> Kann es sein, dass jemand solche Formular maschinell ausfüllt - wie
> funktioniert das eigentlich?
Die Formulare werden nicht "maschinell ausgefüllt", sondern gar nicht
erst benutzt. Statt dessen sendet ein Client die infizierten Daten
direkt an Deinen Server, und der hat keine Möglichkeit, zu prüfen, ob
die Daten tatsächlich über Dein Formular kommen.
Gruß. Claus
Re: utf-8 und Mailformular
Claus Reibenstein schrieb:
> Werner Partner schrieb:
>
>> Joerg Behrens schrieb:
>>
>>> Werner Partner schrieb:
>>>
>>>> if(mail($_POST['Mail'], $_POST['Subject'], $_POST['Msg'], "From: "
>>>> . $_POST['From'])) {
>>> 2. Obiger Code ist eine SPAM Schleuder und laedt zum Missbrauch ein.
>>> Unschuldige muessen darunter dann leiden.
>> Bitte erklär mir, warum der Code eine Spamschleuder ist und wie ich das
>> ändern kann.
>
> Du gibst die Inhalte von $_POST direkt an mail() weiter. Prüfst Du die
> Inhalte vorher ab? Wenn ja, ist alles in Ordnung. Wenn nicht: auf diesem
> Wege kann man problemlos fremde Zieladressen einschleusen und damit
> Deinen Server als Spamschleuder benutzen.
>
> Auf <http://www.php-faq.de/q/q-sicherheit-parameter.html> kannst Du noch
> ein bisschen mehr darüber erfahren.
>
Vielen dank für den Hinweis.
Ich überprüfe die Daten teilweise. Den Artikel werde ich mir durchlesen
und sehen, inwieweit ich dann mein Formular verbessern kann.
Danke
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Claus Reibenstein schrieb:
> Werner Partner schrieb:
>
>> Joerg Behrens schrieb:
>>
>
> Und vermutlich noch bei hundert Anderen, deren Adressen da mit
> eingeschleust wurden.
>
>> Kann es sein, dass jemand solche Formular maschinell ausfüllt - wie
>> funktioniert das eigentlich?
>
> Die Formulare werden nicht "maschinell ausgefüllt", sondern gar nicht
> erst benutzt. Statt dessen sendet ein Client die infizierten Daten
> direkt an Deinen Server, und der hat keine Möglichkeit, zu prüfen, ob
> die Daten tatsächlich über Dein Formular kommen.
Aber dann hat das ja eigentlich nichts mit dem Formular zu tun, oder?
Der Server steht bei meinem Provider (1&1 bzw. Goneo).
Neulich war in c't wieder ein bericht, wie sowas funktioniert - mit den
neuesten Technologien. Ich muss ehrlich sagen, dass ich es nicht
wirklich verstanden habe.
In welchem Zusammenhang stehen die infizierten Daten mit meinem Formular
- gibt's dazu was, was ich lesen kann. Oder gibt es eine Möglichkeit,
dass jemand das verständlich erklärt - so 'n bisschen wie ind er Sendung
mit der Maus ;-)
Grüße
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de
Re: utf-8 und Mailformular
Werner Partner schrieb:
> Claus Reibenstein schrieb:
>> Werner Partner schrieb:
>>
>>> Joerg Behrens schrieb:
>>>
>>
>> Und vermutlich noch bei hundert Anderen, deren Adressen da mit
>> eingeschleust wurden.
>>
>>> Kann es sein, dass jemand solche Formular maschinell ausfüllt - wie=
>>> funktioniert das eigentlich?
>>
>> Die Formulare werden nicht "maschinell ausgefüllt", sondern gar nich=
t
>> erst benutzt. Statt dessen sendet ein Client die infizierten Daten
>> direkt an Deinen Server, und der hat keine Möglichkeit, zu prüfen,=
ob
>> die Daten tatsächlich über Dein Formular kommen.
>
> Aber dann hat das ja eigentlich nichts mit dem Formular zu tun, oder?
> Der Server steht bei meinem Provider (1&1 bzw. Goneo).
>
> Neulich war in c't wieder ein bericht, wie sowas funktioniert - mit den=
> neuesten Technologien. Ich muss ehrlich sagen, dass ich es nicht
> wirklich verstanden habe.
Ich wiederhole mich noch einmal.
Lese mal den Thread "register_globals off - Anfaenger Problem" vom 15.8
aus dieser Gruppe.
> In welchem Zusammenhang stehen die infizierten Daten mit meinem Formula=
r
> - gibt's dazu was, was ich lesen kann. Oder gibt es eine Möglichkeit,=
> dass jemand das verständlich erklärt - so 'n bisschen wie ind er Se=
ndung
> mit der Maus ;-)
Mit Formular meinen wir das HTML was du erzeugst und normalerweise von
einem Browser angezeigt wird. Das interessiert aber einen Spamer nur
soweit das er Einmalig die Feldnamen ermitteln muss. Ab da an geht es
bei ihm Scriptgesteuert und automatisiert weiter, er sendet die Daten
dann direkt an dein PHP Script was fuer die Verarbeitung bestimmt ist.
Das in deinem Falle das PHP Script das HTML fuer das Formular und
gleichzeitig die Bearbeitung macht ist hier nebensaechlich.
Dein Script uebergibt halt die Variablen ungeprueft an die PHP
Funktionen wie mail(). Gerade der 4.Parameter dieser Funktion
ermoeglicht sehr schnell und leicht einen Missbrauch.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: utf-8 und Mailformular
Joerg Behrens schrieb:
> Ich wiederhole mich noch einmal.
> Lese mal den Thread "register_globals off - Anfaenger Problem" vom 15.8
> aus dieser Gruppe.
Ja, ich habe mir den Thread nochmal sichtbar gemacht. Das ist auch so
ein Thema, an dem mein Unverständnis immer wieder anbrandet - auch
darauf bezog sich der c't-Bericht. Ich denke, ich muss da mal ran.
> Mit Formular meinen wir das HTML was du erzeugst und normalerweise von
> einem Browser angezeigt wird. Das interessiert aber einen Spamer nur
> soweit das er Einmalig die Feldnamen ermitteln muss. Ab da an geht es
> bei ihm Scriptgesteuert und automatisiert weiter, er sendet die Daten
> dann direkt an dein PHP Script was fuer die Verarbeitung bestimmt ist.
>
> Das in deinem Falle das PHP Script das HTML fuer das Formular und
> gleichzeitig die Bearbeitung macht ist hier nebensaechlich.
>
So ganz habe ich's nicht verstanden, aber so ein kleines bisschen.
ich denke, in den zwei Quellen ist genug drin, was ich lesen und
umsetzen kann.
Danke
Werner
--
--------------------------------------------------
Dorothee & Werner Partner, 45699 Herten
http://www.sonoptikon.de