Schrift
[thread]10285[/thread]

multipart message mit MIME::Lite und utf8 (Seite 2)

Leser: 4


<< |< 1 2 >| >> 14 Einträge, 2 Seiten
ptk
 2007-09-01 04:21
#98958 #98958
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Umlaute im Subject müssen gesondert behandelt werden. Ich weiß nicht, ob MIME::Lite das automatisch macht, wenn nicht, muss man mit Encode.pm und den Pseuso-Encodings MIME-Header, MIME-B oder MIME-Q nachhelfen.
Superfrank
 2007-09-03 13:02
#99021 #99021
User since
2006-09-05
164 Artikel
BenutzerIn
[default_avatar]
Hallo,
mit

Code (perl): (dl )
1
2
utf8::decode($subject);
$subject = encode('MIME-Header', $subject);


funktionieren nun auch die großen Umlaute ÄÖÜ bei aktiviertem Kaspersky-Spamfilter.

Um nochmal auch meine Anwendung zur Erklärung zurückzukommen. Die Seiten sind utf8-kodiert und es wird eine mysql-Datenbank die auf utf8_general_ci eingestellt ist. Die Scripte selbst sind nicht utf8-kodiert. Die Bearbeitung von Datenbankinhalten mit Umlauten funktioniert nur mit einem

Code (perl): (dl )
SET NAMES utf8


nach dem Verbindungsaufbau zur Datenbank, dafür muß danach aber nichts mehr herumkodiert werden, d.h. Formulareingaben landen direkt in der Datenbank und können als html-Output wieder direkt ausgegeben werden. Ich habe mir durchaus einiges zu dem Thema utf8 durchgelesen, habe es aber nach wie vor nicht ganz verstanden :-/
Als erstes stellt man fest "hmm, das wird nicht richtig angezeigt", dann gehts los mit ziellosem en/decoden bis es irgendwann funktioniert. Und so ist es bei mir jedesmal wenn es um utf8 geht.

Viele Grüsse

Frank
Gast Gast
 2007-09-03 15:41
#99024 #99024
Superfrank+2007-09-03 11:02:46--
Hallo,
mit

Code (perl): (dl )
1
2
utf8::decode($subject);
$subject = encode('MIME-Header', $subject);


funktionieren nun auch die großen Umlaute ÄÖÜ bei aktiviertem Kaspersky-Spamfilter.

Um nochmal auch meine Anwendung zur Erklärung zurückzukommen. Die Seiten sind utf8-kodiert und es wird eine mysql-Datenbank die auf utf8_general_ci eingestellt ist. Die Scripte selbst sind nicht utf8-kodiert. Die Bearbeitung von Datenbankinhalten mit Umlauten funktioniert nur mit einem

Hmm,
diesen Umstand hättest du vorher erzählen sollen. bei MySQL ist das noch etwas anders, und dann ist es klar warum du noch ein utf8::decode benötigst.

Auch wenn du die Tabellen bei MySQL in UTF8 hast. Die verbindung von DBD::mysql ist weiterhin iso-8859-1. Das hat zur folge das du zwar Variablen in Perl hast wo UTF8 Bytefolgen drin sind. Perl selber gehat aber davon aus das es ein ISO-8859-1 String ist. Dadurch kommen dann auch falsche Zeichen an.

mit utf8::decode setzt du explizit das utf8 flag einer Variable. Leider macht es DBD::mysql zur zeit noch nicht selber.
sid burn
 2007-09-03 15:42
#99025 #99025
User since
2006-03-29
1520 Artikel
BenutzerIn

user image
bäh, nich eingeloggt. Der obere Post ist von mir.
Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de
<< |< 1 2 >| >> 14 Einträge, 2 Seiten



View all threads created 2007-08-31 15:06.