叮~
你的源码分享纯干货到了,
请注意查收!
用户手机号注册源码分享,首页获取验证码,调用阿里大鱼短信验证码,接口thinkphp5.2写的,可以判断手机号是否注册,短信发送是否成功。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<meta name="format-detection" content="telephone=no,email=no,date=no,address=no">
<title>title</title>
<link rel="stylesheet" type="text/css" href="../css/api.css"/>
<link rel="stylesheet" type="text/css" href="../css/style.css" />
<link rel="stylesheet" type="text/css" href="../css/aui.2.0.css" />
</head>
<body>
<div class="aui-content aui-margin-b-15">
<ul class="aui-list aui-form-list">
<li class="aui-list-item">
<div class="aui-list-item-inner">
<div class="aui-list-item-label-icon">
<i class="aui-iconfont aui-icon-mobile"></i>
</div>
<div class="aui-list-item-input">
<input type="text" placeholder="手机号" id="mobile">
</div>
</div>
</li>
<li class="aui-list-item">
<div class="aui-list-item-inner">
<div class="aui-list-item-label-icon">
<i class="aui-iconfont aui-icon-lock"></i>
</div>
<div class="aui-list-item-input">
<input type="text" placeholder="验证码" id="code">
</div>
<div class="aui-list-item-label-icon">
<i class="aui-iconfont aui-icon-display"></i>
</div>
</div>
</li>
</ul>
</div>
<div align="center">
<button type="button" onclick="get_code();">
获取验证码
</button>
<button type="button" onclick="next_reg();">
下一步
</button>
</div>
</body>
<script type="text/javascript" src="../script/api.js"></script>
<script type="text/javascript">
var mobile = document.getElementById("mobile");
var code = document.getElementById("code");
var code_str = "";
for (var i = 0; i < 6; i++) {
code_str += Math.round(Math.random() * 10);
}
var getcode = document.getElementById("getcode");
// alert(code_str);
function get_code() {
// alert(mobile.value);
// alert();
if (mobile.value.length == 0) {
alert("手机号不能为空");
return;
}
api.ajax({
url : 'http://huodong.demo.com/index.php/api/Member/getCode',
method : 'post',
data : {
values : {
mobile : mobile.value,
code_str : code_str,
signature : '*******'
}
}
}, function(data) {
// alert(data.code);
if (data) {
if (data.code == 1) {
// alert('验证码发送成功');
api.toast({
msg : '验证码发送成功'
});
} else if (data.code == 2) {
alert('验证码发送失败');
} else if (data.code == 3) {
alert('手机号已注册');
}
} else {
alert('111');
}
});
}
//用户注册
function next_reg() {
if (code.value != code_str) {
alert("验证码错误");
return;
}
// api.openWin({
// name : 'personer_regsetpass',
// url : 'personer_regsetpass.html',
// pageParam : {
// mobile : mobile.value
// }
// });
api.openWin({
name : 'personer_regsetpass',
url : './a_headbackindex.html',
pageParam : {
title : '注册',
url : 'personer_regsetpass',
mobile : $api.setStorage('mobile', mobile.value)
}
});
}
// function backtoIndex() {
// api.closeToWin({
// name : 'root'
// });
// }
apiready = function() {
// $api.fixStatusBar($api.dom('header'));
// api.addEventListener({
// name : 'keyback'
// }, function(ret, err) {
// backtoIndex();
// });
};
</script>
</html>
php接口代码:
//注册获取手机验证码接口
public function getCode()
{
$code = Request::instance()->post('code_str');
$mobile = Request::instance()->post('mobile');
$signature = Request::instance()->post('signature');
$str = Db::table('member')->where('phone', $mobile)->find();
if ($str) {
// echo 3;
$res['code'] = 3;
} else {
if ($signature == '************') {
Loader::import('AlibabaAliqinFcSmsNumSendRequest', EXTEND_PATH);
Loader::import('TopClient', EXTEND_PATH);
Loader::import('ResultSet', EXTEND_PATH);
Loader::import('RequestCheckUtil', EXTEND_PATH);
Loader::import('TopLogger', EXTEND_PATH);
$c = new \TopClient;
$c->appkey = '';//换成自己的
$c->secretKey = '';//换成自己的
$req = new \AlibabaAliqinFcSmsNumSendRequest;
$req->setExtend("123456");
$req->setSmsType("normal");
$req->setSmsFreeSignName("");//换成自己的
$req->setSmsParam("{\"code\":\"$code\",\"product\":\"注册\"}");
$req->setRecNum("$mobile");
$req->setSmsTemplateCode("SMS_2575466");
$resp = $c->execute($req);
if ($resp) {
// echo 1;
$res['code'] = 1;
} else {
// echo 2;
$res['code'] = 2;
}
} else {
// echo 3;
$res['code'] = 3;
}
}
echo json_encode($res);
}
分享到:
相关推荐
通常,当用户在应用或网站上进行敏感操作时,系统会向用户注册的手机号发送一个随机生成的四位或六位数字验证码。用户在规定时间内输入这个验证码,系统验证正确后才会执行相应操作。这个过程涉及以下几个关键步骤:...
在用户界面,需要清晰地提示用户操作步骤,包括输入手机号、获取验证码、输入验证码、倒计时显示等。验证码发送后,前端会有一个定时器模拟60秒倒计时,期间用户无法再次获取验证码。 7. **验证码验证** 用户输入...
本文将通过分析提供的标题、描述和部分源代码,深入讲解如何构建这样一个高效且简洁的登录注册界面。 首先,从WXML(微信小程序的标记语言)代码中可以看到,界面主要由几个关键组件构成: 1. **顶部欢迎信息**:`...
3. **获取验证码**:一旦用户输入了手机号码,点击“获取验证码”按钮,后台系统会通过短信服务向该号码发送一条包含验证码的短信。这通常涉及到与第三方短信服务商的API集成。在前端,jQuery会监听按钮点击事件,...
在微信小程序开发中,用户注册或登录过程中...总之,小程序获取验证码倒计时是提高用户安全性并优化注册、登录体验的关键步骤。理解其背后的工作原理和实现方式,对于微信小程序的开发人员来说,是提升技能的重要一环。
2. 使用jQuery监听按钮点击事件,触发AJAX请求发送手机号获取验证码。 3. 验证手机号格式,确保其合法。 4. 发送请求成功后,启动倒计时功能,按钮变为不可点击状态。 5. 倒计时结束后,恢复按钮可点击状态并更新...
- 使用HTML、CSS和JavaScript构建用户界面,用户输入手机号并获取验证码,输入验证码并提交注册信息。前端代码可能需要与后端的Controller进行交互,例如通过Ajax异步请求验证验证码。 10. **最佳实践**: - 注册...
传统的电子邮件注册方式容易受到垃圾邮件和机器人攻击,而通过手机号码验证可以有效防止这些情况,确保新注册用户的真实性,同时减少恶意注册的可能性。手机验证码注册过程一般包括以下几个步骤: 1. 用户输入手机...
在上面的代码中,我们首先初始化了MobSDK,然后获取了设备的唯一标识(通常为IMEI),接着创建了一个SmsMob对象,并设置了手机号和设备标识。最后,通过SmsMob对象的sendSms方法发送验证码,并提供了回调处理发送...
这是按键精灵的源码,为迅码短信验证码的获取函数,分别为登录,获取手机 拉黑操作
【在线验证码获取】自动获取特定号码的验证短信中的验证码 纯数字型 自动获取特定号码的验证短信中的验证码(纯数字型) 只一个按键,这个按键上面有倒计时,倒计时结束显示重新发送验证码,在倒计时进行中输入完...
1.以下验证码例子采用的是先获取手机号文字验证码,如果文字验证码收不到,将采用语音播放验证码的形式,两种形式的结合,基本避免个别手机号收不到的问题,从而是验证码的成功率接近100%,有效的避免客户的流失。...
本示例"用户注册源代码demo"提供了一种使用手机号码和验证码进行注册的方法,这是一种常见的安全验证手段。这里我们将深入探讨该过程涉及的关键技术和知识点。 首先,我们关注的是"手机号码验证码注册"。这通常包括...
短租/火云获取验证码 2.短租/火云释放指定号码(短租没写) 3.额...Emmmmm......太多了自己琢磨 本来说多写几个平台的 但是......伤脑筋(只写了我常用的几个平台)短信验证码接收平台-易语言源码+模块打包出售
- `LoginVc`可能包含一个输入手机号的文本框和获取验证码的按钮,以及一个显示倒计时的标签。 - 用户界面设计通常使用Storyboard或SwiftUI,其中布局和交互设计是关键。 2. **短信验证服务**: - 通常,开发者会...
在移动应用或网页开发中,"手机获取验证码的时间倒数.rar"这个压缩包文件涉及到一个常见的功能:用户在输入手机号码后,点击“获取验证码”按钮,系统会发送一条包含验证码的短信到用户手机,并同时在界面上启动一个...
1. **表单元素准备**:创建一个表单,包含手机号输入框和验证码输入框,以及一个获取验证码的按钮。HTML代码可能如下所示: ```html 请输入手机号" required> 请输入验证码" disabled> 获取验证码 ``` 2. **...
在这个场景中,我们讨论的是如何使用Vue来实现一个手机号验证登录功能,其中包含了获取验证码的60秒倒计时逻辑。下面是实现这一功能的关键步骤和代码解释: 首先,我们需要在HTML模板中创建一个按钮元素,用于触发...
结合以上知识点,"jiaoben6065"文件可能是这个功能的源代码实现,开发者可以下载并参考该代码以快速构建自己的手机注册表单。在实际项目中,还需要考虑用户体验优化,如加载状态提示、错误提示的友好性等,以及安全...