当前位置:首页 > 网站技术 > 后端技术 > 正文内容

实现PHPCMS里提交表单发送邮件功能

小彬2020-06-03后端技术441

使用phpcms自带的邮件发送功能实现前台页面表单提交时发送邮件

1、首先在phpcms后台找到邮箱配置

实现PHPCMS里提交表单发送邮件功能

2、修改相关配置信息。

我这里建议使用163的邮件服务器,因为我刚开始用的就是QQ,但是不好用。

记得如果使用163,那么邮件服务器要使用ssl加密模式,端口号是994

实现PHPCMS里提交表单发送邮件功能

发件人就是注册的163账号,验证用户名和发件人一样,验证密码就是授权码。

点击邮件设置测试,如果邮箱收到邮件,那么表示成功了

实现PHPCMS里提交表单发送邮件功能


3、在后台设置->模块->表单向导添加接收邮件,即可实现前台表单提交邮箱收到邮件功能

依照下图设置即可

实现PHPCMS里提交表单发送邮件功能


4、一般情况下这个时候收到的邮件都是空白的,所以要去修改PHP代码

找到 /phpcms/modules/formguide/index.php


找到  foreach ($mails as $m) {
       sendmail($m, L('tips'), $this->M['mailmessage']);
  } 替换为


$f_info = $this->db->get_one(array('modelid'=>$formid, 'siteid'=>$this->siteid));  
            $MailSubject = '用户提交表单['.$f_info['name'].']提醒';  
            $Fields = getcache('formguide_field_'.$formid, 'model');  
            $Fields['username']['name'] = '用户名';  
            $Fields['datetime']['name'] = '提交时间';  
            $Fields['ip']['name'] = '提交IP';  
            unset($data['userid'], $data['datetime']);  
            foreach($data as $k=>$v){  
                    $MailBody .= $Fields[$k]['name'].'        :'.$v.'<br />';  
            }          
            foreach ($mails as $m) {  
                    sendmail($m, $MailSubject, $MailBody.$this->M['mailmessage']); 
            }


当然最后也许自己想要的字段并没有,那就需要在表单向导里面加字段,然后在前台使用input[hidden]隐藏。这个自己去参照着源码修改


实现PHPCMS里提交表单发送邮件功能


最后在手机端提交的时间是标准时间,所以要修改一下。


      // 联系我们的留言
    $(".linkForm").click(function(){
        let date = new Date();
        let year = date.getFullYear();
        let month = date.getMonth() + 1;
        let date2 = date.getDate();
        let hours = date.getHours();
        let seconds = date.getSeconds();
        let minutes = date.getMinutes();
        let time = JSON.stringify(year + '-' + month + '-' + date2 + ' ' + hours + ':' + minutes + ':' + seconds);
        $(".formLink").val(window.location.href)
        $(".formTime").val(time)
    })


标签: phpcms
分享给朋友:

相关文章

使用火车头采集文章并发布在PHPCMS里(新手看完即会)

使用火车头采集文章并发布在PHPCMS里(新手看完即会)

网上其实有免登录的方法 https://www.gwygd.com/rRz6bMWRO.html但是我用过,发现不能用,所以只好用了登录的方法,所幸成功了。首先下载火车头,里面有phpcms采集文章的...

phpcms v9模板制作及二次开发常用代码

phpcms v9模板制作及二次开发常用代码

0:调用最新文章,带所在版块{pc:get sql="SELECT a.title, a.catid, b.catid, b.catname...

PHP入门基础之文件操作函数封装

PHP入门基础之文件操作函数封装

1、php创建函数的注释使用vscode 编辑器,安装vs docblocker , 输入/** 回车如下    /**  * [create_fi...

PHP入门之图像信息处理(验证码、水印、缩略图)

PHP入门之图像信息处理(验证码、水印、缩略图)

PHP处理图像信息要使用GD库(imageMagick是另外一种图像处理工具)1、gd_info:检测服务器支持的图像格式var_dump(gd_info()); // array(13)&n...

PHPCMS完成手机端搭建全教程(新手看完即会)

PHPCMS完成手机端搭建全教程(新手看完即会)

注:这篇文章是在我做完一个自适应和一个响应式网站后写的。所以我建议,如果可以的话,最好用@media css做响应式网站,这样就不用考虑手机端的各种问题。因为我当初做的就是自适应,但是没有想到后面的坑...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

分享:

支付宝

微信