用phpmailer实现网页表单提交发送邮件功能

引言:有时我们想在网页上填好表单后,表单内容能以邮件的方式发送给指定的人,那么我们可以利用phpmailer这个php函数包来完成这个需求。

一、获取邮箱授权码

邮箱授权码是邮箱帐号用于登录第三方客户端的专用密码。获取方法根据邮箱厂家的不同略有差别,我这里用的是163邮箱,获取方法比较简单,不会的可以去查一下。

二、下载phpmailer函数包

有的教程会丢给你官方的下载链接让你去下载,这样你去下载最新的phpmailer函数包后,可能会发现教程里用到的包和下载的包不一样......教程是几年前的,包却是最新的,坑啊。

我这里整理了一下,需要的朋友可以下载,提取码:ll79 。

下载解压后得到:

用phpmailer实现网页表单提交发送邮件功能_第1张图片

三、示例代码

1.HTML结构

2.send.php

isSMTP();                          // 使用SMTP服务
$mail->CharSet = "utf8";
$mail->Host = "smtp.163.com";             // 发送方的SMTP服务器地址
$mail->SMTPAuth = true;// 是否使用身份验证
$mail->Username = "[email protected]";   // 发送方的163邮箱用户名
$mail->Password = "xxxxx";                // 发送方的邮箱授权码
$mail->SMTPSecure = "ssl";                // 使用ssl协议方式
$mail->Port = 465;                        // 163邮箱的ssl协议方式端口号是465/994

$mail->setFrom("[email protected]","yessen");     // 设置发件人信息
$mail->addAddress("[email protected]","");        // 设置收件人信息,可设置多个,复制粘贴此行修改邮箱地址即可
$mail->addReplyTo("[email protected]","Reply");   // 设置回复人信息,指的是收件人收到邮件后,如果要回复,回复邮件将发送到的邮箱地址
//$mail->addCC("[email protected]");    // 设置邮件抄送人,可以只写地址,上述的设置也可以只写地址
//$mail->addBCC("[email protected]");         // 设置秘密抄送人
//$mail->addAttachment("bug0.jpg");      // 添加附件


$mail->Subject = "网页收到新留言啦~~";          // 邮件标题
$mail->Body = "姓名:".$_POST[name]."
               邮件:".$_POST[email]."
               电话:".$_POST[phone]."
               主题:".$_POST[subject]."
               内容:".$_POST[comments];      // 邮件正文

if(!$mail->send()){// 发送邮件
    echo "Message could not be sent.";
    echo "Mailer Error: ".$mail->ErrorInfo;  // 输出错误信息
}else{
    echo 'Message has been sent.';
}
?>

四、结果

网页上填好表单点击提交后,顺利的话可以看到网页显示:Message has been sent.

然后就可以去查看收到的邮件:

用phpmailer实现网页表单提交发送邮件功能_第2张图片

 

提示:有的朋友web服务器用的是云虚拟主机,需要注意的是应保证php.ini设置里的fsockopen函数为启用状态。

你可能感兴趣的:(PHP,HTML)