php本身提供了一个邮件发送函数mail,可以在程序中直接发送电子邮件,不过该函数要求服务器支持sendmail
或者必须设置一台不需要中继的邮件发送服务器,但现在要找到一台不需要身份验证的邮件发送中继几乎不可能.
所以使用mail函数往往无法成功发送email.
自己如果熟悉smtp协议,结合socket功能就可以编写高效稳定的邮件发送程序,但对一般用户来说太困难.好在互联网上已经有很多别人编写好的邮件发送模块,我们只需要下载后简单调用即可,十分方便.
在此我们给用户推荐一个php下功能十分强大,易用且免费的smtp类模块-phpmailer,(下载地址 )
phpmailer是一个用于发送电子邮件的php函数包。它提供的功能包括:
*.在发送邮时指定多个收件人,抄送地址,暗送地址和回复地址
*.支持多种邮件编码包括:8bit,base64,binary和quoted-printable
*.支持smtp验证
*.支持冗余smtp服务器
*.支持带附件的邮件和html格式的邮件
*.自定义邮件头
*.支持在邮件中嵌入图片
*.调试灵活
*.经测试兼容的smtp服务器包括:,,,imail,exchange等
*.可运行在任何平台之上
下载该组件后,按如下示例编写代码即可实现php在线发送邮件.
一:前台表单
二:后台php程序
require("class.phpmailer.php"); //下载的文件必须放在该文件所在目录
$mail = new phpmailer(); //建立邮件发送类
$address = $_post['address'];
$mail->issmtp(); // 使用smtp方式发送
$mail->host = "mail.xxxxx.com"; // 您的企业邮局域名
$mail->smtpauth = true; // 启用smtp验证功能
$mail->username = ""; // 邮局用户名(请填写完整的email地址)
$mail->password = "******"; // 邮局密码
$mail->from = ""; //邮件发送者email地址
$mail->fromname = "您的名称";
$mail->addaddress("$address", "");//收件人地址,可以替换成任何想要接收邮件的email信箱,格式是addaddress("收件人email","收件人姓名")
//$mail->addreplyto("", "");
//$mail->addattachment("/var/tmp/file.tar.gz"); // 添加附件
//$mail->ishtml(true); // set email format to html //是否使用html格式
$mail->subject = "phpmailer测试邮件"; //邮件标题
$mail->body = "hello,这是测试邮件"; //邮件内容
$mail->altbody = "this is the body in plain text for non-html mail clients"; //附加信息,可以省略
if(!$mail->send())
{
echo "邮件发送失败.
";
echo "错误原因: " . $mail->errorinfo;
exit;
}
echo "邮件发送成功";
?>
【尊龙凯时网址的版权声明】:本站内容来自于与互联网(注明原创稿件除外),供访客免费学习需要。如文章或图像侵犯到您的权益,请及时告知,我们第一时间删除处理!谢谢!