易仿帝国yfdiguo.com

首页 > 插件
短信插件:手机验证码注册,手机验证码找回密码

短信插件:手机验证码注册,手机验证码找回密码

  • 售价:免费
  • 适用版本:帝国cms7.2以上
  • 来源:收集
  • 下载人数:41

插件介绍

 如今手机验证码注册已经非常流行了,本插件就是实现帝国CMS利用手机验证码注册会员,通过手机验证码找回密码

短信接口集成说明

短信服务商:   http:/www.sms.com.cn

短信接口文档: http://www.sms.com.cn/Sms/api.php

【手机注册】

1、增加5个拓展变量字段(都选择写入缓存)

rzzh     短信接口账号     (短信服务商账号,看上面服务商信息注册账号)

rzpw     短信接口密码     (短信服务商密码)

rznr     短信认证内容     (内容:手机注册认证码:[!--rzm--]   【签名】)

rznrq     短信认证内容     (内容:手机找回密码认证码:[!--rzm--]   【签名】)

rzkq     是否开启手机认证 (1 为开启 0为关闭)

 

2、增加数据表 phome_rz ,后台-执行SQL语句

1
2
3
4
5
6
7
8
9
REATE TABLE `[!db.pre!]rz` (
  `id` int(11) NOT NULL auto_increment,
  `bsm` varchar(255) NOT NULL,
  `rzm` varchar(255) NOT NULL,
  `sj` varchar(255) NOT NULL,
  `t` int(11) NOT NULL,
  `c` int(11) NOT NULL,
  KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

增加数据表 phome_rzq ,后台-执行SQL语句

1
2
3
4
5
6
7
8
9
10
CREATE TABLE `[!db.pre!]rzq` (
  `id` int(11) NOT NULL auto_increment,
  `bsm` varchar(255) NOT NULL,
  `rzm` varchar(255) NOT NULL,
  `sj` varchar(255) NOT NULL,
  `t` int(11) NOT NULL,
  `c` int(11) NOT NULL,
  `username` char(20) NOT NULL,
  KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

3、e/class/connect.php 增加函数(看函数文件.txt)

 

4、 e/member/doaction.php增加

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
elseif($enews=='RegSend')//重发激活邮件
      {
    DoRegSend($_POST);
      }
        下面增加
       elseif($enews=='Rzsj')//认证手机号码
      {
    $tel=$_GET['phone'];
    F_rzm($tel);
       }
       elseif($enews=='Rzsjq')//认证手机号码取回密码
      {
   $add=$_GET;
   F_rzmq($add);
      }

5. e/member/class/member_registerfun.php  增加

1
2
3
4
5
6
7
8
9
10
11
12
//验证附加表必填项
$mr['add_filepass']=ReturnTranFilepass();
$fid=GetMemberFormId($groupid);
$member_r=ReturnDoMemberF($fid,$add,$mr,0,$username);
        下面增加
//手机注册验证
if($public_r['add_rzkq'])
        
   $tel=$add['phone'];
   $rzm=$add['rzm'];
   C_sjrz($tel,$rzm);
        }

6. 修改 e/template/member/register.php 【1】

1
2
3
4
5
<tr> 
      <td height="25" bgcolor="#FFFFFF"> <div align='left'>邮箱</div></td>
      <td height="25" bgcolor="#FFFFFF"> <input name='email' type='text' id='email' maxlength='50'>
        *</td>
    </tr>

下面增加

1
2
3
4
5
6
7
8
9
10
11
<? $sjrz=1;?>
     <tr> 
      <td height="25" bgcolor="#FFFFFF"> <div align='left'>手机号码</div></td>
      <td height="25" bgcolor="#FFFFFF"> <input name='phone' type='text' id='phone' maxlength='50'>
        *</td>
    </tr>
<tr> 
      <td height="25" bgcolor="#FFFFFF"> <div align='left'>验证码</div></td>
      <td height="25" bgcolor="#FFFFFF"> <input name='rzm' type='text' id='rzm' maxlength='30'>
        *<input  type="button" style="font-size: 12px; height: 22px; line-height: 19px;" value="发送验证码" onclick="sendrzm()" id="sendag"  ></td>
    </tr>

7. 修改 e/template/member/register.php 【2】

1
2
3
<?php
require(ECMS_PATH.'e/template/incfile/footer.php');
?>

前面增加:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<SCRIPT language=javascript>
<!--
var secs = 120;
function sendrzm(){
     var tel=$("#phone").val();
     $.getJSON('/e/member/doaction.php?enews=Rzsj&phone=' + tel + '',
        function(data) {
            if(data.d=='2'){
    alert(data.n);
}else{
    document.userinfoform.sendag.disabled=true;
                for(i=1;i<=secs;i++) {
                 window.setTimeout("update(" + i + ")", i * 1000);
                }
}
             
        });
    
}
function update(num) {
 if(num == secs) {
 document.userinfoform.sendag.value ="重新发送验证码";
 document.userinfoform.sendag.disabled=false;
 }
else {
 printnr = secs-num;
 document.userinfoform.sendag.value = "(" + printnr +")重新发送验证码";
 }
}
//-->
</SCRIPT>

8. 修改 e/template/member/register.php 【3】

   头部增加jquery.js文件

   <script src="/js/jquery.min-1.7.2.js"></script>

   复制/js/jquery.min-1.7.2.js   到根目录(包括文件夹)

9.修改会员表单 (后台-用户-会员管理-管理会员表单)

 

找到

1
<tr><td width='16%' height=25 bgcolor='ffffff'>手机</td><td bgcolor='ffffff'>[!--phone--]</td></tr>

改成:

1
<? if(!$sjrz){?> <tr><td width='16%' height=25 bgcolor='ffffff'>手机</td><td bgcolor='ffffff'>[!--phone--]</td></tr><? }?>

【手机找回密码】

1.覆盖 e/template/member/GetPassword.php

2.修改 e/member/class/member_actfun.php       

覆盖函数 SendGetPasswordEmail  查看SendGetPasswordEmail.txt

©2017 易仿帝国yfdiguo.com


友情链接: 阿里云优惠网| 阿里云推荐码| 阿里云教程| 莫愁博客|
♥ www.yfdiguo.com
联系作者QQ: