虽然说现在还在使用网站留言以及表单收集功能的网站不多,但还是有一小部分用户依然在使用。有没有想过当网站收到新留言后,或者有用户提交新的表单信息后,希望程序自动将它们发送到我们的QQ邮箱呢?说实话,很多人做不到经常登录网站后台,但QQ、微信确是时时刻刻都在线,当有新的邮件到达的时候,可以及时收到邮件信息。如果可以将网站留言和表单信息及时发送到邮箱中,那就不怕错过什么客户的信息了。
说动手就动手,我们在GitHub上找到了PHPMail 这么一个邮件发送代码。不过这个代码由多个文件组成,使用上还需要掌握点php基础,才能结合到我们的网站上来。
鉴于一些用户不懂代码,于是我特地把PHPMail重新整理成单个文件的形式,并对立面的一些配置信息进行了简化处理,更方便使用和部署。当需要拿来用的时候,可以更方便的使用,只需要按照下面的几个简单步骤,就可以把它应用到你的网站上来了。
在QQ邮箱的账号设置中开启smtp并设置授权码
登录我们的QQ邮箱,并点击账号下方的 设置->账号,往下拉,拉到 POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务 服务的tab,选择开启 POP3/SMTP服务 ,并点击下方的 生成授权码 链接,生成一个授权码,用于邮箱中的配置。授权码由16位字符组成,生成结束后,把它保存下来备用。生成授权码的时候,可能要求你验证邮箱的密保,按正常操作即可。
下载mail.zip 并配置邮箱账号
从附件中下载 mail.zip 解压得到 mail.php。
用一个文本编辑软件打开 mail.php,找到 账号配置部分:
//email配置信息 $config = array( 'server' => 'smtp.qq.com', 'use_ssl' => '1', 'port' => '465', 'account' => '你的邮箱账号@qq.com', 'name' => '企业网站安全助手', 'password' => '你的授权密码', );
这里填写上你的账号信息,把 你的邮箱账号@qq.com
替换成你的真实邮箱地址, 把 你的授权密码
替换成刚才上面生成的授权码。最后保存。
只需要替换这2个地方就算配置完账号了。
这个时候,需要把它上传到网站的根目录,等待下一步调用处理。
对接网站,改造表单
这个 mail.php 文件 支持 post 和 get 两种形式的表单提交处理,并且支持 json 、html 、 空白 三种返回方式。
处理方式一 保持原有表单
这个方法需要你懂点php代码,要不处理起来会比较麻烦
以我们的网站留言表单为例,为了不影响原网站留言的后台记录,我们需要对表单的html部分,增加一个 return 字段,声明不已html或json返回。
<input type="hidden" name="return" value="empty" />
并在接收的php代码中,找到接收函数,增加调用:
// 在这里引入发送邮件处理文件 require_once('mail.php');
处理方式二 直接将请求发送到 mail.php
这是最简单的处理方式,你不需要懂php就可以,只需要将留言的 form 表单的接收地址改为 mail.php 即可。
同样,我们最好新添加一个return字段到表单。不添加也不影响使用,因为默认就是html的形式返回。
<input type="hidden" name="return" value="html" />
接着更改action 值为 /mail.php
处理方式三 使用ajax提交表单
如果你的表单原来使用ajax来提交,也可以使用mail.php 来接管处理。
只需要在提交的地址中,改成 /mail.php?return=json
即可。
由于不能上传zip文件,请到GitHub上下载 mail.zip