php 发送邮件
2013-01-25 15:07
190 查看
下载地址: http://code.google.com/a/apache-extras.org/p/phpmailer/downloads/list
先下载文件,然后把三个class.***.php文件放到项目文件下,
<?php
require("class.phpmailer.php");
function smtp_mail( $sendto_email, $subject, $body, $extra_hdrs, $user_name){
$mail = new PHPMailer();
$mail->IsSMTP(); // send via SMTP
$mail->Host = "smtp.qq.com"; // SMTP servers
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "365988537@qq.com"; // SMTP username 注意:普通邮件认证不需要加 @域名
$mail->Password = "123456"; // SMTP password
$mail->From = "365988537@qq.com"; // 发件人邮箱
//$mail->FromName = "管理员"; // 发件人
$mail->FromName = "=?utf-8?B?".base64_encode("管理员")."?="; // 发件人乱码时,可以这样处理:utf-8是你指定的邮件字符集
//$mail->FromName = "=?gb2312?B?".base64_encode("发件人")."?="; // 发件人
$mail->CharSet = "utf-8"; // 这里指定字符集!
$mail->Encoding = "base64";
$mail->AddAddress($sendto_email,"username"); // 收件人邮箱和姓名
//$mail->AddReplyTo("yourmail@yourdomain.com","yourdomain.com"); //抄送
//$mail->WordWrap = 50; // set word wrap 换行字数
//$mail->AddAttachment("/var/tmp/file.tar.gz"); // attachment 附件
//$mail->AddAttachment("/tmp/image.jpg", "new.jpg");
$mail->IsHTML(true); // send as HTML
// 邮件主题
$mail->Subject = $subject;
// 邮件内容
$mail->Body = "
<html><head>
</head>
<body>
I love php。
</body>
</html>
";
$mail->AltBody ="text/html";
if(!$mail->Send())
{
echo "邮件发送有误 <p>";
echo "邮件错误信息: " . $mail->ErrorInfo;
exit;
}
else {
echo "$user_name 邮件发送成功!<br />";
}
}
// 参数说明(发送到, 邮件主题, 邮件内容, 附加信息, 用户名)
smtp_mail("design231@163.com", "欢迎使用phpmailer!", "NULL", "baidu.com", "username");
?>
/*************************************************
附件:
phpmailer 中文使用说明(简易版)
A开头:
$AltBody--属性
出自:PHPMailer::$AltBody
文件:class.phpmailer.php
说明:该属性的设置是在邮件正文不支持HTML的备用显示
AddAddress--方法
出自:PHPMailer::AddAddress(),文件:class.phpmailer.php
说明:增加收件人。参数1为收件人邮箱,参数2为收件人称呼。例 AddAddress("eb163@eb163.com","eb163"),但参数2可选,AddAddress(eb163@eb163.com)也是可以的。
函数原型:public function AddAddress($address, $name = '') {}
AddAttachment--方法
出自:PHPMailer::AddAttachment()
文件:class.phpmailer.php。
说明:增加附件。
参数:路径,名称,编码,类型。其中,路径为必选,其他为可选
函数原型:
AddAttachment($path, $name = '', $encoding = 'base64', $type = 'application/octet-stream'){}
AddBCC--方法
出自:PHPMailer::AddBCC()
文件:class.phpmailer.php
说明:增加一个密送。抄送和密送的区别请看[SMTP发件中的密送和抄送的区别] 。
参数1为地址,参数2为名称。注意此方法只支持在win32下使用SMTP,不支持mail函数
函数原型:public function AddBCC($address, $name = ''){}
AddCC --方法
出自:PHPMailer::AddCC()
文件:class.phpmailer.php
说明:增加一个抄送。抄送和密送的区别请看[SMTP发件中的密送和抄送的区别] 。
参数1为地址,参数2为名称注意此方法只支持在win32下使用SMTP,不支持mail函数
函数原型:public function AddCC($address, $name = '') {}
AddCustomHeader--方法
出自:PHPMailer::AddCustomHeader()
文件:class.phpmailer.php
说明:增加一个自定义的E-mail头部。
参数为头部信息
函数原型:public function AddCustomHeader($custom_header){}
AddEmbeddedImage --方法
出自:PHPMailer::AddEmbeddedImage()
文件:class.phpmailer.php
说明:增加一个嵌入式图片
参数:路径,返回句柄[,名称,编码,类型]
函数原型:public function AddEmbeddedImage($path, $cid, $name = '', $encoding = 'base64', $type = 'application/octet-stream') {}
提示:AddEmbeddedImage(PICTURE_PATH. "index_01.jpg ", "img_01 ", "index_01.jpg ");
在html中引用
AddReplyTo--方法
出自:PHPMailer:: AddRepl
*************************************************/
?>
常见问题:
1. Can not connect to server, 表示连接服务端失败,可以尝试 telnet smtp.xxx.com 25 来测试邮件服务器的IP地址是否正确并且端口开放。
2. Mailer Error: The following From address failed: 123456@qq.com
SMTP server error: mail from address must be same as authorization user
这种是邮件服务器要求授权,登录qq 邮箱,进行设置,允许 smtp 即可。
3.邮件乱码:把相关文件全部转成 ANSI 编码格式,
先下载文件,然后把三个class.***.php文件放到项目文件下,
<?php
require("class.phpmailer.php");
function smtp_mail( $sendto_email, $subject, $body, $extra_hdrs, $user_name){
$mail = new PHPMailer();
$mail->IsSMTP(); // send via SMTP
$mail->Host = "smtp.qq.com"; // SMTP servers
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "365988537@qq.com"; // SMTP username 注意:普通邮件认证不需要加 @域名
$mail->Password = "123456"; // SMTP password
$mail->From = "365988537@qq.com"; // 发件人邮箱
//$mail->FromName = "管理员"; // 发件人
$mail->FromName = "=?utf-8?B?".base64_encode("管理员")."?="; // 发件人乱码时,可以这样处理:utf-8是你指定的邮件字符集
//$mail->FromName = "=?gb2312?B?".base64_encode("发件人")."?="; // 发件人
$mail->CharSet = "utf-8"; // 这里指定字符集!
$mail->Encoding = "base64";
$mail->AddAddress($sendto_email,"username"); // 收件人邮箱和姓名
//$mail->AddReplyTo("yourmail@yourdomain.com","yourdomain.com"); //抄送
//$mail->WordWrap = 50; // set word wrap 换行字数
//$mail->AddAttachment("/var/tmp/file.tar.gz"); // attachment 附件
//$mail->AddAttachment("/tmp/image.jpg", "new.jpg");
$mail->IsHTML(true); // send as HTML
// 邮件主题
$mail->Subject = $subject;
// 邮件内容
$mail->Body = "
<html><head>
</head>
<body>
I love php。
</body>
</html>
";
$mail->AltBody ="text/html";
if(!$mail->Send())
{
echo "邮件发送有误 <p>";
echo "邮件错误信息: " . $mail->ErrorInfo;
exit;
}
else {
echo "$user_name 邮件发送成功!<br />";
}
}
// 参数说明(发送到, 邮件主题, 邮件内容, 附加信息, 用户名)
smtp_mail("design231@163.com", "欢迎使用phpmailer!", "NULL", "baidu.com", "username");
?>
/*************************************************
附件:
phpmailer 中文使用说明(简易版)
A开头:
$AltBody--属性
出自:PHPMailer::$AltBody
文件:class.phpmailer.php
说明:该属性的设置是在邮件正文不支持HTML的备用显示
AddAddress--方法
出自:PHPMailer::AddAddress(),文件:class.phpmailer.php
说明:增加收件人。参数1为收件人邮箱,参数2为收件人称呼。例 AddAddress("eb163@eb163.com","eb163"),但参数2可选,AddAddress(eb163@eb163.com)也是可以的。
函数原型:public function AddAddress($address, $name = '') {}
AddAttachment--方法
出自:PHPMailer::AddAttachment()
文件:class.phpmailer.php。
说明:增加附件。
参数:路径,名称,编码,类型。其中,路径为必选,其他为可选
函数原型:
AddAttachment($path, $name = '', $encoding = 'base64', $type = 'application/octet-stream'){}
AddBCC--方法
出自:PHPMailer::AddBCC()
文件:class.phpmailer.php
说明:增加一个密送。抄送和密送的区别请看[SMTP发件中的密送和抄送的区别] 。
参数1为地址,参数2为名称。注意此方法只支持在win32下使用SMTP,不支持mail函数
函数原型:public function AddBCC($address, $name = ''){}
AddCC --方法
出自:PHPMailer::AddCC()
文件:class.phpmailer.php
说明:增加一个抄送。抄送和密送的区别请看[SMTP发件中的密送和抄送的区别] 。
参数1为地址,参数2为名称注意此方法只支持在win32下使用SMTP,不支持mail函数
函数原型:public function AddCC($address, $name = '') {}
AddCustomHeader--方法
出自:PHPMailer::AddCustomHeader()
文件:class.phpmailer.php
说明:增加一个自定义的E-mail头部。
参数为头部信息
函数原型:public function AddCustomHeader($custom_header){}
AddEmbeddedImage --方法
出自:PHPMailer::AddEmbeddedImage()
文件:class.phpmailer.php
说明:增加一个嵌入式图片
参数:路径,返回句柄[,名称,编码,类型]
函数原型:public function AddEmbeddedImage($path, $cid, $name = '', $encoding = 'base64', $type = 'application/octet-stream') {}
提示:AddEmbeddedImage(PICTURE_PATH. "index_01.jpg ", "img_01 ", "index_01.jpg ");
在html中引用
AddReplyTo--方法
出自:PHPMailer:: AddRepl
*************************************************/
?>
常见问题:
1. Can not connect to server, 表示连接服务端失败,可以尝试 telnet smtp.xxx.com 25 来测试邮件服务器的IP地址是否正确并且端口开放。
2. Mailer Error: The following From address failed: 123456@qq.com
SMTP server error: mail from address must be same as authorization user
这种是邮件服务器要求授权,登录qq 邮箱,进行设置,允许 smtp 即可。
3.邮件乱码:把相关文件全部转成 ANSI 编码格式,
相关文章推荐
- php使用SAE原生Mail类实现各种类型邮件发送的方法
- PHP系统邮件发送函数
- PHP发送邮件类库PHPMailer的简单使用
- php使用smtp封装类发送邮件
- php---发送邮件
- php---发送邮件
- php使用phpmailer类发送邮件
- PHP发送邮件
- 如何正确运用PHP发送邮件函数
- PHP发送EMAIL邮件
- PHP使用SMTP发送邮件
- php 发送邮件
- PHPMailer 发送邮件示例代码
- php发送邮件email
- 简单测试PHPMailer发送邮件
- PHPMailer发送邮件失败:SMTP connect failed
- Windows 下 用 php 【mail()】函数发送邮件 (本地环境)
- PHPMailer发送邮件出现Permission denied的解决办法
- 使用PHP发送邮件
- Web_PHP_使用PHPMailer类实现PHP邮件发送功能;