Schrift
[thread]12582[/thread]

[php] Problem mit Formularfelderüberprüfung und UTF-8 (Seite 9) [gelöst]

Leser: 27


<< |< 1 ... 6 7 8 9 10 11 >| >> 104 Einträge, 11 Seiten
GwenDragon
 2010-11-20 18:56
#142927 #142927
User since
2005-01-17
14540 Artikel
Admin1
[Homepage]
user image
@Bianca
Outlook kann nicht mit UTF-8 in den Mailheadern Subject und From umgehen.
QuotedPrintable in den MIME-Headern nutzt auch nix.

Das Mail würde so aussehen bei Subject
Code: (dl )
ÄÖÜß Test 1€
und From
Code: (dl )
"ÄÖÜß Test" <a@er.de>
und Body
Code: (dl )
1
2
Text 
Text

Code: (dl )
1
2
3
4
5
6
7
8
9
Subject: =?UTF-8?Q?=C3=83=C2=84=C3=83=C2=96=C3=83=C2=9C=C3=83=C2=9F=20Test=20=31?=
=?UTF-8?Q?=C3=A2=C2=82=C2=AC?=
From: =?UTF-8?Q?=22=C3=83=C2=84=C3=83=C2=96=C3=83=C2=9C=C3=83=C2=9F=20Test=22?=
=?UTF-8?Q?=20=3Ca=40er=2Ede=3E?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Text
Text



Last edited: 2010-11-20 19:06:41 +0100 (CET)
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

bianca
 2010-11-20 19:00
#142928 #142928
User since
2009-09-13
6977 Artikel
BenutzerIn

user image
OK, Problem anscheinend erkannt. Und was soll von wo nach wo in welchem Format? Also was ist das Ziel?
Edit: Abgesehen davon, dass ich das nicht glaube :)

Edit2: Bitte um ein Test-PHP-Script das den Fehler hervorruft, damit ich mitspielen kann.
Last edited: 2010-11-20 19:06:01 +0100 (CET)
10 print "Hallo"
20 goto 10
GwenDragon
 2010-11-20 19:11
#142929 #142929
User since
2005-01-17
14540 Artikel
Admin1
[Homepage]
user image
Nicht von wo nach wo.
Alles ist UTF-8 und soll als Mail mit PHPs mail versandt werden.

Testskript (als UTF-8 kodierte Source!):
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
setlocale(LC_ALL, 'de_DE.UTF-8');
$_POST['Betreff']='ÄÖÜß Test 1€';
$_POST['Absender']='"ÄÖÜß Test" <a@local>';
$_POST['Text']='
Aha!

Soso!

ÄÖÜß

';
mail('email@local',
"Subject: " . mb_encode_mimeheader($_POST['Betreff'], 'utf-8', 'Q'),
$_POST['Text'],
'From: ' . mb_encode_mimeheader($_POST['Absender'], 'utf-8', 'Q') . "\n"
. 'Content-Type: text/plain; charset="utf-8"' . "\n"
. 'Content-Transfer-Encoding: 8bit'
);
?>

Last edited: 2010-11-20 19:12:49 +0100 (CET)
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

bianca
 2010-11-20 19:41
#142930 #142930
User since
2009-09-13
6977 Artikel
BenutzerIn

user image
Guest Chris
...dieser lautet:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Received: from xxx
by xxx
for xxx Sat, 20 Nov 2010 16:43:17 +0100 (CET)
Received: from xxx
by xxx
for <xxx>; Sat, 20 Nov 2010 16:43:15 +0100 (CET)
Received: by xxx (xxx); Sat, 20 Nov 2010 16:43:15 +0100
Date: Sat, 20 Nov 2010 16:43:15 +0100
xxx-Script: http://www.website.de/kontaktformular.php
xxx-Sender: xxx
To: xxx
Subject: Dies ist ein =?UTF-8?Q?gr=C3=83=C2=B6=C3=83=C2=9Ferer=20Test?=
From: xxx
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
Message-Id: <xxx>

Hilft das?

Gruß

Chris

Sorry aber nach meinem Dafürhalten ist da im Header ein "Haar in der Suppe".

Was sollen diese seltsamen Codierungen im Subject bewirken?
Das Umlaut-Umwandeln ist überflüssig beim Content-Transfer-Encoding: quoted-printable
Die Mime-Version fehlt komplett

Outlook und vermutlich auch alle anderen Mailclients kommen mit folgender Mail hervorragend zurecht:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Return-Path: <meinemail@gmx.de>
Delivered-To: bestimmungsmail@server.com
Received: (qmail 24541 invoked from network); 20 Nov 2010 18:26:08 -0000
Received: from unknown (HELO localhost.localdomain)
by 0 with ESMTPA; 20 Nov 2010 18:26:08 -0000
MIME-Version: 1.0
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain
Date: Sat, 20 Nov 2010 19:27:26 +0100
Cc: Name und mail
Subject: Testbetreff2 mit Umlauten öäüßÖÄÜ [20.11.2010,19:27:26]
To: empfänger <mail@dot.com>
From: Absender <absender@gmx.de>

[20.11.2010,19:27:26] Dies ist eine testmail mit Umlauten =F6=E4=FC=DF=D6=
=C4=DC
Neue Zeile
und eine gaaaaaaaanz laaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa=
nge Zeileeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee=
10 print "Hallo"
20 goto 10
Gast Chris
 2010-11-20 19:48
#142931 #142931
Hallo,

und wie müsste dies dann im PHP-Script von oben aussehen, so dass es in Outlook richtig dargestellt wird?
Ich möchte auf alle Fälle auf UTF-8 bleiben. Das war ja genau der Hintergrund des ganzen Threads.

Gruß

Chris
Last edited: 2010-11-20 19:58:14 +0100 (CET)
Gast wer
 2010-11-20 19:59
#142932 #142932
Code: (dl )
=F6=E4=FC=DF=D6=C4=DC
Die Umlaute sind aber nicht UTF8 (sondern ISO-8859-1) kodiert. Es wären sonst jeweils Wertepaare die so aus sähen "=C2=xx" oder "=C3=xx".
UND das genau ist das Problem. Wie es scheint kommt Outlook nicht so recht damit klar und Dekodiert UTF8 Paare als einzelne ISO-8859-1 Werte. Das dann zu einer kaputten Darstellung führt.

Bricht man die UTF-8 Kodierung zu einer ISO-8859-1 herunter macht Outlook kein Problem mehr, dafür sind aber nicht mehr alle UTF-8 Zeichen darstellbar.
Last edited: 2010-11-20 20:02:40 +0100 (CET)
bianca
 2010-11-20 20:05
#142933 #142933
User since
2009-09-13
6977 Artikel
BenutzerIn

user image
Guest Chris
und wie müsste dies dann im PHP-Script von oben aussehen, so dass es in Outlook richtig dargestellt wird?

Keine Ahnung. Du brauchst eine vernünftiges Mai-Modul für PHP. Für Perl haben wir MIME::Lite das macht alles sehr sauber und wie oben beschrieben.

Guest Chris
Ich möchte auf alle Fälle auf UTF-8 bleiben. Das war ja genau der Hintergrund des ganzen Threads.

Kannste ja. Dein Webserver und dessen charset hat ja nichts mit ausgehenden Mails zu tun. Die Verzwirbelung dieser beiden Dinge verstehe ich ohnehin nicht. Woher kommt das?
10 print "Hallo"
20 goto 10
Gast Chris
 2010-11-20 20:09
#142934 #142934
...und nun?

Ich kann mir vorstellen, dass mehr Websites auf UTF-8 sind (ist ja mehr oder weniger nun der Website-Standard) und auch entsprechende Kontaktformulare verwenden mit denen auch die Umlaute korrekt angezeigt werden, oder?

Gruß

Chris
Last edited: 2010-11-20 20:34:41 +0100 (CET)
bianca
 2010-11-20 20:11
#142935 #142935
User since
2009-09-13
6977 Artikel
BenutzerIn

user image
Guest wer
Bricht man die UTF-8 Kodierung zu einer ISO-8859-1 herunter macht Outlook kein Problem mehr, dafür sind aber nicht mehr alle UTF-8 Zeichen darstellbar.

Nenn mal bitte Beispiele, welche Zeichen dann fehlen.
10 print "Hallo"
20 goto 10
Gast Chris
 2010-11-20 20:16
#142936 #142936
...siehe auch Beitrag von oben.

Es wird dann im Outlook:

Betreff: Dies ist ein grerer Test
Hallo, dies ist ein größerer Test, oder?

ausgegeben.

Also das ö und das ß unterdrückt.

Gruß

Chris
Last edited: 2010-11-20 20:34:44 +0100 (CET)
<< |< 1 ... 6 7 8 9 10 11 >| >> 104 Einträge, 11 Seiten



View all threads created 2008-10-04 14:02.