thinkphp implements the method of sending and receiving emails in 163 and QQ mailboxes

不言
Release: 2023-03-30 07:02:01
Original
3494 people have browsed it

This article mainly introduces the method of thinkphp to realize sending and receiving emails in 163 and other mailboxes. It has been tested on 163 NetEase mailbox, and I would like to share it with you.

It took a long time to explore step by step, and finally first 163 The test on NetEase mailbox was successful. I will share the process with everyone below.

Before entering the topic, let’s take a look at the server address and port number of NetEase (163) mailbox:

1. Preparation

To use NetEase mailbox, of course you need to register an account. I don’t need to say more about this, just register it yourself. . .

After registration, you need to enable the POP3/SMTP/IMAP service. When opening the service, a client authorization password is required (mobile phone verification is required here, and MD asks for a mobile phone number in a roundabout way).

Step one:

##Step two:


#After confirmation, the following dialog box will pop up, and the authorization password will also be sent to your text message. Remember this authorization password. Be sure to remember it.


After the service is turned on, if [Name] is not set, you will be prompted to set [Name] before sending the email when writing an email. Of course, you can also set it in advance. good. .


2. Code part

PHPMailer download (after downloading, place PHPMailer in the Vendor directory and another file There are a lot of unnecessary things, just take care of them yourself)

Careful students can check the default port number in the three files class.phpmailer.php class.pop3.php class.smtp.php. The default SMTP port number is 25, which is the same as the non-SSL protocol port number of the SMTP sending server under 163.

html layout:

<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
</head>
<body>
 <form action="__URL__/add" method="post" enctype="multipart/form-data">
 收件人邮箱:<input type="text" name="mail"/>
 标题:<input type="text" name="title"/>
 内容<input type="text" name="content"/>
 <input class="button" type="submit" value="发送"/>
 </form>
</body>
</html>
Copy after login

config.php configuration:

&#39;MAIL_HOST&#39; =>&#39;smtp.163.com&#39;,//smtp服务器的名称
&#39;MAIL_SMTPAUTH&#39; =>TRUE, //启用smtp认证
&#39;MAIL_USERNAME&#39; =>&#39;zha****22@163.com&#39;,//发件人的邮箱名
&#39;MAIL_PASSWORD&#39; =>&#39;olagbqsyeyhilcwu&#39;,//163邮箱发件人授权密码
&#39;MAIL_FROM&#39; =>&#39;zha****22@163.com&#39;,//发件人邮箱地址
&#39;MAIL_FROMNAME&#39;=>&#39;天空还下着雪&#39;,//发件人姓名
&#39;MAIL_CHARSET&#39; =>&#39;utf-8&#39;,//设置邮件编码
&#39;MAIL_ISHTML&#39; =>TRUE, // 是否HTML格式邮件
Copy after login

function.php public function:

/*
 * 发送邮件
 * @param $to string
 * @param $title string
 * @param $content string
 * @return bool
 * */
function sendMail($to, $title, $content) {
 Vendor(&#39;PHPMailer.PHPMailerAutoload&#39;);
 $mail = new PHPMailer(); //实例化
 $mail->IsSMTP(); // 启用SMTP
 $mail->Host=C(&#39;MAIL_HOST&#39;); //smtp服务器的名称(这里以QQ邮箱为例)
 $mail->SMTPAuth = C(&#39;MAIL_SMTPAUTH&#39;); //启用smtp认证
 $mail->Username = C(&#39;MAIL_USERNAME&#39;); //发件人邮箱名
 $mail->Password = C(&#39;MAIL_PASSWORD&#39;) ; //163邮箱发件人授权密码
 $mail->From = C(&#39;MAIL_FROM&#39;); //发件人地址(也就是你的邮箱地址)
 $mail->FromName = C(&#39;MAIL_FROMNAME&#39;); //发件人姓名
 $mail->AddAddress($to,"尊敬的客户");
 $mail->WordWrap = 50; //设置每行字符长度
 $mail->IsHTML(C(&#39;MAIL_ISHTML&#39;)); // 是否HTML格式邮件
 $mail->CharSet=C(&#39;MAIL_CHARSET&#39;); //设置邮件编码
 $mail->Subject =$title; //邮件主题
 $mail->Body = $content; //邮件内容
 $mail->AltBody = "这是一个纯文本的身体在非营利的HTML电子邮件客户端"; //邮件正文不支持HTML的备用显示
 return($mail->Send());
}
Copy after login

add method call:

public function add() {
 if(SendMail($_POST[&#39;mail&#39;],$_POST[&#39;title&#39;],$_POST[&#39;content&#39;])) {
 $this->success(&#39;发送成功!&#39;);
 } else {
 $this->error(&#39;发送失败&#39;);
 }
}
Copy after login

After completing the above work, next visit the address and send an email to 163 (NetEase) mailbox through the form (for example: send to 123456@163.com), or you can send it to yourself. After sending, you will see that the sending was successful. . Next you can log in to your mailbox to check your emails.

QQ mailbox sending and receiving mail

QQ mailbox sending and receiving mail server address and port


Preparation:

1. Set an independent email password
2. Enable POP3/SMTP service

Configuration:

&#39;MAIL_HOST&#39; =>&#39;smtp.qq.com&#39;,//smtp服务器的名称
&#39;MAIL_SMTPAUTH&#39; =>TRUE, //启用smtp认证
&#39;MAIL_USERNAME&#39; =>&#39;541****34@qq.com&#39;,//发件人邮箱名
&#39;MAIL_PASSWORD&#39; =>&#39;s****1241&#39;,//qq邮箱发件人独立密码
&#39;MAIL_FROM&#39; =>&#39;541****34@qq.com&#39;,//发件人地址
&#39;MAIL_FROMNAME&#39;=>&#39;恋狱&#39;,//发件人姓名(qq邮箱昵称)
&#39;MAIL_CHARSET&#39; =>&#39;utf-8&#39;,//设置邮件编码
&#39;MAIL_ISHTML&#39; =>TRUE, // 是否HTML格式邮件
Copy after login

No other changes are required. After completion, not only You can send emails to QQ mailbox users or 163 mailbox users.

The above is how thinkphp implements sending and receiving emails to 163 and other mailboxes. I hope it will be helpful to everyone's learning.

Related recommendations:

ThinkPHP basic add, delete, check and modify operation example tutorial

The above is the detailed content of thinkphp implements the method of sending and receiving emails in 163 and QQ mailboxes. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template