uijk123 发表于 2016-2-16 21:51:00

注册页手机短信验证码检测函数有错误

本帖最后由 uijk123 于 2016-2-16 21:57 编辑

今天测试了下短信接口,因为在其他短信平台上还有余额,所以就改了下/include/global.func.php这个文件里的send_sms函数,发送验证码和信息的功能都OK,就是PC端注册有个小BUG,无论输入的验证码是否正确,旁边都是红叉,这个表框的JS是onblur="validator('mobilecode');"
但是发现JS里的validator函数根本不能检测验证码啊,请管理员看看是否为BUG



static/image/common/none.gif


a1.jpg (12.94 KB, 下载次数: 0)

下载附件


2016-2-16 21:57 上传






//以下为DT官方短信发送函数

function send_sms_old($mobile, $message, $word = 0, $time = 0) {
      global $db, $DT, $DT_TIME, $DT_IP, $_username;
      if(!$DT['sms'] || !DT_CLOUD_UID || !DT_CLOUD_KEY || !is_mobile($mobile) || strlen($message) query("INSERT INTO {$db->pre}sms (mobile,message,word,editor,sendtime,code) VALUES ('$mobile','$message','$word','$_username','$DT_TIME','$code')");
      return $code;
}



//以下为我根据官方二开文档改的

function send_sms($mobile, $message, $word = 0, $time = 0) {
global $db, $DT, $DT_TIME, $DT_IP, $_username;
$word or $word = word_count($message);
      
$sms_uid = '****************'; //短信接口帐号
$sms_key = '*****************'; //短信接口密钥
$sms_charset = 'UTF-8'; //您的网站编码
$sms_mobile = $mobile; //接收手机号码
$sms_message = convert($message, DT_CHARSET, 'UTF-8'); //短信内容

//对短信内容进行编码
$sms_message = rawurlencode($sms_message);

//发送短信
$codedd = file_get_contents('http://api.smsbao.com/sms?u='.$sms_uid.'&p='.$sms_key.'&m='.$sms_mobile.'&c='.$sms_message);

//处理发送结果
注:这个平台成功只返回0,所以要改造一下

if($codedd==0){
$code = 1;
}else{$code = 'Can Not Connect SMS Server';}

$db->query("INSERT INTO {$db->pre}sms (mobile,message,word,editor,sendtime,code) VALUES ('$mobile','$message','$word','$_username','$DT_TIME','$code')");
return $code;
}

duoluozhe 发表于 2016-2-17 15:47:21


这里是没有问题的,你这样改了后台短信管理这里就没有成功标识了,真正的问题是SESSION变量的参数升级修改了没有改过来,只要改下api\ajax\member.inc.php文件
搜索:
[*]$_SESSION['mobile']复制代码
修改为:
[*]$_SESSION['mobile_save']复制代码
就可以了

zyhwoming 发表于 2016-2-16 21:55:46


大神你是对的,我也发现了这个问题。。。。
不管发送几个验证码,都是现实错误的小红叉,不过还是可以顺利通过注册

uijk123 发表于 2016-2-16 21:57:52


zyhwoming 发表于 2016-2-16 21:55

大神你是对的,我也发现了这个问题。。。。
不管发送几个验证码,都是现实错误的小红叉,不过还是可以顺利 ...
是的,只要输入的验证码正确,可以通过注册

枪口的雨 发表于 2016-2-16 21:55:00


楼上应该可以

龙在天涯 发表于 2016-2-17 17:34:43


不错,学习了

uijk123 发表于 2016-2-18 09:09:21


duoluozhe 发表于 2016-2-17 15:47

这里是没有问题的,你这样改了后台短信管理这里就没有成功标识了,真正的问题是SESSION变量的参数升级修改 ...
正解,感谢分享!
http://bbs.destoon.com/static/image/smiley/default/smile.gif

zhao90 发表于 2016-2-18 14:22:10


学习一下

ranlucky 发表于 2016-2-17 15:47:00


我是3.0版本的,也是用其它平台的短信,请问怎么修改呢,我想用短信验证注册,求懂的大侠帮帮忙。

枪口的雨 发表于 2016-2-18 16:56:39


学习了 我发现手机版的验证码都不能正确识别
页: [1]
查看完整版本: 注册页手机短信验证码检测函数有错误