<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
我們的微信小程式裡面,手機驗證碼登入已經成為不可缺少的一部門,為此,我寫的這個手機驗證碼登入,這裡我結合thinkphp6+微信小程式實現
首先我們進入小程式頁面:
wxml頁面:
<!--pages/phone/phone.wxml--> <view class="container"> <view class="title" style='height:{{statusBarHeight+100}}rpx;padding-top:{{statusBarHeight}}rpx;'>登入</view> <form catchsubmit="login"> <view class="inputView"> <input class="inputText" value="{{phone}}" placeholder="請輸入手機號" name="phone" bindblur="phone" /> </view> <view class="inputView"> <input class="inputText" value="{[code]}" placeholder="請輸入驗證碼" name="code" /> <button class="line" disabled="{{disabled}}" size="mini" bindtap="sendcode">{{codebtn}}</button> </view> <view class="loginBtnView"> <button class="loginBtn" type="primary" formType="submit">登入</button> </view> </form> </view> <button type="primary" open-type="contact">線上諮詢</button>
js頁面:
Page({ /** * 頁面的初始資料 */ data: { windowHeight:0, phone:'', code:'', codebtn:'傳送驗證碼', disabled:false, }, /** * 生命週期函數--監聽頁面載入 */ onLoad: function (options) { }, // 獲取輸入賬號 phone: function (e) { let phone = e.detail.value; let reg = /^[1][3,4,5,7,8][0-9]{9}$/; if (!reg.test(phone)) { wx.showToast({ title: '手機號碼格式不正確', icon:"none", duration:2000 }) return false; } this.setData({ phone: e.detail.value }) }, //傳送驗證碼 sendcode(res){ var phone=this.data.phone; var time = 60; var that=this; wx.request({ url: 'http://www.easyadmin.com/api/phone', data:{ phone:phone }, success:res=>{ if(res.data.code==200){ wx.showToast({ title: '驗證碼已傳送.請注意接收', icon:"success" }) var timers=setInterval(function () { time--; if (time>0){ that.setData({ codebtn:time, disabled:true }); }else{ that.setData({ codebtn:'傳送驗證碼', disabled:false }); clearInterval(timers) } },1000) }else{ wx.showToast({ title: res.data.msg, icon:"none", duration:2000 }) } this.setData({ code:res.data.data, }) } }) }, // 登入處理 login(e){ var phone=this.data.phone var code=this.data.code wx.request({ url: 'http://www.easyadmin.com/api/loginDo', method:'POST', data:{ phone, code }, success:res=>{ if(res.data.code==200){ wx.redirectTo({ url: '/pages/my/my', }) } console.log(res.data) } }) }, })
wxss頁面:
/* pages/phone/phone.wxss */ .container { display: flex; flex-direction: column; padding: 0; } .inputView { line-height: 45px; border-bottom:1px solid #999999; } .title{ width: 80%; font-weight: bold; font-size: 30px; } .inputText { display: inline-block; line-height: 45px; padding-left: 10px; margin-top: 11px; color: #cccccc; font-size: 14px; } .line { border: 1px solid #ccc; border-radius: 20px; float: right; margin-top: 9px; color: #cccccc; } .loginBtn { margin-top: 40px; border-radius:10px; }
後端php介面:這裡我用的是簡訊寶的平臺
public function phone(Request $request) { $data=$request->get('phone'); $statusStr = array( "0" => "簡訊傳送成功", "-1" => "引數不全", "-2" => "伺服器空間不支援,請確認支援curl或者fsocket,聯絡您的空間商解決或者更換空間!", "30" => "密碼錯誤", "40" => "賬號不存在", "41" => "餘額不足", "42" => "帳戶已過期", "43" => "IP地址限制", "50" => "內容含有敏感詞" ); $yzm=rand(1111,9999); $smsapi = "http://api.smsbao.com/"; $user = "賬號"; //簡訊平臺帳號 $pass = md5("密碼"); //簡訊平臺密碼 $content="您的驗證碼是$yzm,請不要告訴任何人";//要傳送的簡訊內容 // $phone = $data;//要傳送簡訊的手機號碼 // $sendurl = $smsapi."sms?u=".$user."&p=".$pass."&m=".$phone."&c=".urlencode($content); // $result =file_get_contents($sendurl) ; // echo $statusStr[$result]; $code=Cache::set($data,$yzm); return json(['code'=>'200','data'=>$yzm,'msg'=>'簡訊傳送成功']); }
public function loginDo() { $data=request()->post(); $code=Cache::get($data['phone']); if($code!==$data['code']){ return json(['code'=>'400','data'=>'','msg'=>'簡訊驗證碼錯誤']); } $res=User::where('phone',$data['phone'])->find(); if (empty($res)){ $user = User::create([ 'phone'=>$data['phone'] ]); return json(['code'=>'200','註冊成功','data'=>$user]); }else{ $user=User::where('phone',$data['phone'])->find(); return json(['code'=>'300','登入成功','data'=>$user]); } }
這樣一個簡訊驗證碼功能就完成啦。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45