php+mysql模拟队列发送邮件的资料推荐

黄舟
黄舟 原创
2023-03-15 16:58:02 1023浏览

《php+mysql模拟队列发送邮件》课程,主要解决PHP开发过程中,常见的发送多封邮件时页面卡死的问题,如果需要给网站所有用户发送一封系统通知邮件,假设网站有10000个注册用户,发送每封邮件需要0.1秒,直接发送? NO,当然要用队列,为什么?学完你就知道啦!

E1ZN%IDR$HRSWN14`1$%SLE.png

课程播放地址://m.sbmmt.com/course/260.html

该老师讲课风格:

教师讲课深入浅出,条理清楚,层层剖析,环环相扣,论证严密,结构严谨,用思维的逻辑力量吸引学生的注意力,用理智控制课堂教学进程。学生通过听教师的讲授,不仅学到知识,也受到思维的训练,还受到教师严谨的治学态度的熏陶和感染

本视频中较为难点是phpmailer发送邮件了:

PHPMailer是一个封装好的PHP邮件发送类,支持发送HTML内容的电子邮件,以及图片附件,前提要设置好邮件服务器就能实现邮件发送功能。
HTML

首先我们先放置一个收件箱的输入框和一个发送邮件按钮:

收件人:<input type="text" class="input_text" id="email" name="email" value="@"/> 
<input type="button" class="btn" id="send" value="发送"/>

jQuery

$(function() { 
    $("#send").click(function() { 
        var email = $("#email").val(); 
        $("#send").addClass("loading").val("loading...").attr("disabled", "disabled"); 
        $.post("ajax.php", { 
            "email": email 
        }, 
        function(data) { 
            if (data == 1) { 
                $("#result").html("发送成功,请注意查收您的邮件!"); 
            } else { 
                $("#result").html(data); 
            } 
            $("#send").removeAttr("disabled").removeClass("loading").val("发送"); 
        }); 
    }); 
});

Ajax.php

require_once('class.phpmailer.php'); 
$address = $_POST['email']; //收件人email 
$mail = new PHPMailer(); //实例化 
$mail->IsSMTP(); // 启用SMTP 
$mail->Host = "smtp.163.com"; //SMTP服务器 以163邮箱为例子 
$mail->Port = 25;  //邮件发送端口 
$mail->SMTPAuth = true;  //启用SMTP认证 
 
$mail->CharSet = "UTF-8"; //字符集 
$mail->Encoding = "base64"; //编码方式 
$email_system = "qiumusua@163.com"; 
$mail->Username = $email_system;  //你的邮箱 
$mail->Password = "";  //你的密码 
$mail->Subject = "你好"; //邮件标题 
 
$mail->From = $email_system;  //发件人地址(也就是你的邮箱) 
$mail->FromName = "素材火";  //发件人姓名 
$mail->AddAddress($address, "亲"); //添加收件人(地址,昵称) 
 
$mail->AddAttachment('send.xls', '我的附件.xls'); // 添加附件,并指定名称 
$mail->IsHTML(true); //支持html格式内容 
$mail->AddEmbeddedImage("logo.jpg", "my-attach", "logo.jpg"); //设置邮件中的图片 
$mail->Body = '你好, <b>朋友</b>! <br/>这是一封来自<a href="http://www.erdangjiade.com" target="_blank">erdangjiade.com</a>的邮件!<br/>
<img alt="erdangjiade" src="cid:my-attach">'; //邮件主体内容 
//发送 
if (!$mail->Send()) { 
    echo "发送失败: " . $mail->ErrorInfo; 
} else { 
    echo "1"; 
}

以上就是php+mysql模拟队列发送邮件的资料推荐的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。