作者lichihwu (波特多)
看板PHP
标题Re: [请益] mail()的问题
时间Thu Oct 27 16:52:24 2005
※ 引述《chweng ()》之铭言:
: 是这样的 我想做一个线上寄信的系统 所以会用到mail()函数
: 我的网页都是用UTF-8编码的 这样一来 用这个系统寄出的信也都是UTF-8编码的
: 可是我用Outlook Express收信时却都是乱码
: 虽然可以在编码的地方正确地选回UTF-8 可是总是多一个步骤
: 而且一收到就是乱码 还挺容易直接被我当成垃圾信砍了
: 所以想问一下 是否可以使寄出信件的编码为BIG5
: 或是改变信件的档头 让OE不要误判
: 如果可以的话 我是很不想把那一页改回BIG5编码啦
: 希望能有其他方法 请问要怎麽做比较好呢?
用OE寄给自己一份big5或utf-8的信件件,用OE收信後把该信另存新档,然後用
记事本看看内容,如:
Return-Path: <
[email protected]>
X-Original-To:
[email protected]
Delivered-To:
[email protected]
Received: from lichih (unknown [xxx.xxx.xxx.xxx])
by mail.xxx.com (Postfix) with SMTP id E89AA64C7F
for <
[email protected]>; Thu, 27 Oct 2005 16:46:58 +0800 (CST)
Message-ID: <000f01c5dad3$1fvhjc1c0$3c00a8c0@lichih>
From: "波特多" <
[email protected]>
To: "lichih" <
[email protected]>
Subject: 中文测试
Date: Thu, 27 Oct 2005 16:47:31 +0800
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="----=_NextPart_000_000B_01C5DB16.1FA8B240"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1506
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506
This is a multi-part message in MIME format.
------=_NextPart_000_000B_01C5DB16.1FA8B240
Content-Type: text/plain;
charset="big5"
Content-Transfer-Encoding: 8bit
中文测试
------=_NextPart_000_000B_01C5DB16.1FA8B240
Content-Type: text/html;
charset="big5"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dbig5">
<META content=3D"MSHTML 6.00.2800.1522" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3D=B7s=B2=D3=A9=FA=C5=E9 =
size=3D2>=A4=A4=A4=E5=B4=FA=B8=D5</FONT></DIV></BODY></HTML>
------=_NextPart_000_000B_01C5DB16.1FA8B240--
以这份来说,你可以发现用html格式寄信的方式,只要加上big5
header,看到的就会是中文。
比较有问题的是中文标题有时会看不到。
你也可以更改OE设定,改为以纯文字输出+Uuencode,确定格式後配合
php的base64_encode函式来为标题编码,做纯文字输出。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.84.97.226
※ 编辑: lichihwu 来自: 219.84.97.226 (10/27 17:16)