新短信平台修改方法说明:
第一步,删除自带的短信平台模块:后台模块管理里卸载自带的短信平台
然后删除:
/phpcms/modules/文件夹里sms目录
/caches文件夹里caches_sms目录
/api文件夹里:
sms.php和sms_idcheck.php文件
第四步,后台模块管理,安装短信平台模块
第五步,/phpcms/templates/default/member/register.html文件里关于短信平台发送代码:
原有代码:
$.get("api.php?op=sms",{ mobile: mobile,session_code:session_code,random:Math.random()}, function(data){
if(data=="0") {
$("#mobile_send").html(mobile);
$("#mobile_div").css("display","none");
$("#mobile_send_div").css("display","");
times = 120;
$("#GetVerify").attr("disabled", true);
isinerval = setInterval("CountDown()", 1000);
} else if(data=="-1") {
alert("你今天获取验证码次数已达到上限");
} else if(data=="-100") {
$('#code').val('');
alert("验证码已失效,请点击图片验证码获取新的验证码!");
$('#code').focus();
} else if(data=="-101") {
alert("验证码错误!");
$('#code').focus();
} else {
alert("短信发送失败");
}
});
}
改成:
$.get("api.php?op=sms",{ scense: 'register',mobile: mobile,session_code:session_code,random:Math.random()}, function(data){
if(data.code=="200") {
$("#mobile_send").html(mobile);
$("#mobile_div").css("display","none");
$("#mobile_send_div").css("display","");
times = 120;
$("#GetVerify").attr("disabled", true);
isinerval = setInterval("CountDown()", 1000);
} else if(data.code=="-3") {
alert("你今天获取验证码次数已达到上限");
} else if(data.code=="-4") {
alert("当前IP获取验证码次数已达到上限");
} else if(data.code=="-2") {
alert("手机号码错误");
} else if(data.code=="500") {
alert(data.error);
} else if(data=="-100") {
$('#code').val('');
alert("验证码已失效,请点击图片验证码获取新的验证码!");
$('#code').focus();
} else if(data.code=="-1") {
alert("验证码错误!");
$('#code').focus();
} else {
alert("短信发送失败");
}
});
}
此处修改说明:
1)get请求中增加了scense参数,scense为场景参数,在后台定义,注册使用register
2)增加新接口的返回判断,返回值在api文件夹的sms.php中有注释:-99短信关闭,-1验证码错误,-2手机号码错误,-3当天额度超限,-4同一个IP额度超限
其他方面的修改:
/phpcms/modules/member/templates/member_setting.tpl.php里51-52行找到
<?php echo L('yes')?> <input class="input-radio" name="info[mobile_checktype]" type="radio" />checked<?php }?> value='2' <?php if($sms_disabled) {?>disabled<?php }?> onclick="$('#sendsms_titleid').hide();">
<?php echo L('no')?><input class="input-radio" name="info[mobile_checktype]" type="radio" />checked<?php }?> value='0' onclick="$('#sendsms_titleid').hide();">
替换成:
松模式 <input class="input-radio" name="info[mobile_checktype]" type="radio" />checked<?php }?> value='2' <?php if($sms_disabled) {?>disabled<?php }?> onclick="$('#sendsms_titleid').hide();">
严模式 <input class="input-radio" name="info[mobile_checktype]" type="radio" />checked<?php }?> value='1' onclick="$('#sendsms_titleid').hide();">
关闭 <input class="input-radio" name="info[mobile_checktype]" type="radio" />checked<?php }?> value='0' onclick="$('#sendsms_titleid').hide();">
/phpcms/modules/member/member_setting.php里搜索(47-49行):
if(empty($this->sms_setting['userid']) || empty($this->sms_setting['productid']) || empty($this->sms_setting['sms_key'])){
$sms_disabled = 1;
}
改成:
$sms_disabled = 0;
/phpcms/modules/member/index.php里
搜索:
$sms_report_db = pc_base::load_model('sms_report_model');
共五处,全部改成
$sms_report_db = pc_base::load_model('sms_model');
搜索:
$userinfo['mobile'] = $r['mobile'];
上面增加一行:
$sms_report_db->update(array('id_code'=>''),$where);
新平台使用说明:
平台设置:负责短信平台的开关,开了之后,后台->用户->会员模块配置->手机强制验证方式 选择 是
平台管理:
添加短信平台,如腾讯云,阿里云的
腾讯云用的是应用appid和secretKey
阿里云用的是AccessKey,在短信服务的右上角,头像的下方
场景设置:
自带场景1-3不可修改和删除,可自行增加使用场景。
短信内容配置:
严格意义上讲这个在各大短信运营商里称之为短信模板。
添加的内容必须是在运营商那审核通过后的,如签名,短信模板id,短信模板
每个场景只能添加一个运营商通道
涉及到的地方略多,仔细对照修改,联系QQ:6045564注明短信平台
评论前必须登录!
注册