使用phpmailer自动邮件提醒

###近期的一个小项目中需要用到邮件自动通知功能,搜了搜,发现phpmailer这个东西大家用的挺多的。


1. 首先去sourceforge下载[phpmailer][1],也可去我的[网盘][2]下载,我用的是5.1版本的。


2. 看到phpmailer目录下有三个class文件,这便是phpmailer的核心,可以将这些文件拷到你的项目中。


3. 使用起来phpmailer很方便,如下: 


   ```php

require("class.phpmailer.php");  

$mail = new PHPMailer(); //建立邮件发送类  

$mail->CharSet = "GB2312";

$mail->IsSMTP(); // 使用SMTP方式发送  

$mail->SMTPAuth = true; // 启用SMTP验证功能  

$mail->Port=25;

$mail->Host = "smtp.qq.com"; // 您的企业邮局域名  

$mail->Username = "frommail@qq.com"; // 邮局用户名(请填写完整的email地址)  

$mail->Password = "213123"; // 邮局密码  

$mail->From = "frommail@qq.com"; //邮件发送者email地址  

$mail->FromName = "tester";

$address = "tomail@qq.com";//收件地址

$mail->AddAddress("$address", "a");

$mail->Subject = "测试消息通知";

$mail->Body = "您好!系统中有条信息未审核。"; //邮件内容  

if(!$mail->Send())

{

echo "邮件发送失败. <p>";

echo "错误原因: " . $mail->ErrorInfo;

exit;

    }

   ```


4. 可以在前面发送消息前调用下数据库,查看是否有消息需要发送。


5. 由于我们的项目是在windows的服务器上跑的,所以需要定时去检查是否需要发送邮件。Linux下可以使用crontab轻易地解决,在Windows下要使用windows任务计划。


6. 首先需要写一个bat脚本,但是bat脚本在执行任务计划时,怎么出现一个黑框,挺吓人的,所以先写一个vbs,通过它去调用bat脚本,bat脚本再去调用php实现功能。


7. vbs内容如下:


   ```perl  

Set ws = CreateObject("Wscript.Shell") 

ws.run "cmd /c E:\xampp\htdocs\sdc\application\mail\timeSend.bat",vbhide

   ```

8. vbs调用timeSend.bat,内容如下:


   ```perl

E:\xampp\php\php.exe E:\xampp\htdocs\sdc\application\mail\mail.php > E:\xampp\htdocs\sdc\application\mail\log.txt

   ```


9. 打开**任务面板->系统和安全->管理工具->计划任务**,新建**基本任务**,触发器自己想要触发的时间,操作选择**启动程序**,浏览选择自己的vbs程序,点击完成。


10. 这样,程序就可以在指定时间发送邮件了。



[1]:http://sourceforge.net/projects/phpmailer/

[2]:http://pan.baidu.com/s/1jG3IaV0


转载于:https://my.oschina.net/grnick/blog/262144

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值