phpmailer是一款免费的php邮件发送插件,我们可以利用phpmailer登录到我们指定的邮件然后再利用这个邮件给我们自动发邮件了,这个现在免费的邮箱像163,sina都支持,只是sina需要简单的打开pop3协义了,好了费话不说多了来看看一段phpmainer 163邮件发送邮件吧。
注意:如果你的服务器安装了卖咖啡并且开户病毒最大防护功能我们需要关闭一个邮件防护哦,否则你的邮件发不出去给被这款杀毒给拦截哦。
1. 使用gmail发送的脚本
代码如下 | 复制代码 |
include("class.phpmailer.php"); include("class.smtp.php"); //获取一个外部文件的内容 $mail = new PHPMailer(); $body = file_get_contents('contents.html'); $body = eregi_replace("[]",'',$body); //设置smtp参数 $mail->IsSMTP(); $mail->SMTPAuth = true; $mail->SMTPKeepAlive = true; $mail->SMTPSecure = "ssl"; $mail->Host = "smtp.gmail.com"; $mail->Port = 465; //填写你的gmail账号和密码 $mail->Username = "yourname@gmail.com"; $mail->Password = "password"; //设置发送方,最好不要伪造地址 $mail->From = "yourname@gmail.com"; $mail->FromName = "Webmaster"; $mail->Subject = "This is the subject"; $mail->AltBody = $body; $mail->WordWrap = 50; // set word wrap $mail->MsgHTML($body); //设置回复地址 $mail->AddReplyTo("yourname@gmail.com","Webmaster"); //添加附件,此处附件与脚本位于相同目录下 //否则填写完整路径 $mail->AddAttachment("attachment.jpg"); $mail->AddAttachment("attachment.zip"); //设置邮件接收方的邮箱和姓名 $mail->AddAddress("toname@gmail.com","FirstName LastName"); //使用HTML格式发送邮件 $mail->IsHTML(true); //通过Send方法发送邮件 //根据发送结果做相应处理 if(!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo "Message has been sent"; } |
2.使用163发送邮件的脚本
只需要更改SMTP配置和账户密码即可,SMTP配置如下
代码如下 | 复制代码 |
//设置smtp参数 |
在本地wampserver环境下测试通过,需要开启php_openssl 扩展。
经验分享
有一些朋友参考此教程来使用sina邮件登录发送邮件时你发现新浪邮件并不支持这个功能,其实这个并不是新浪邮箱不支持此功能我们需要在新浪邮箱中找开pop3这个协议才可以,开户方法是登录新浪之后,我们在右边的更多旁边有一个设置按钮,我们点击进入之后会看到有个“帐户设置”进入之后在最下面有一个pop3协义类的我们可以把它开户,这样你再试一下上面代码就可以解决了哦,有朋友部为什么163邮件不用设置呢,因为163邮件默认是打开pop3的哦。