第一次做短信验证,弄了好几天才明白短信验证流程,希望能对小伙伴们有辣么一点点儿滴帮助

流程示意图(纯手绘)

下面上干货:二话不说直接开撸

页面如下:(由于编辑器不能粘贴html代码,所以只能截图)

JS代码:

function send_phone(){

var mobile_phone=$("#mobile_phone").val();

varmobile_code=$("#mobile_code").val();

if($("#mobile_phone").val()==""){

alert("手机号不能为空!");return false;

}

if(!/^(13[0-9]|14[0-9]|15[0-9]|18[0-9])\d{8}$/i.test($("#mobile_phone").val())){

alert("手机号码不对,请正确填写");return false;

}

varurl="{:url('Sms/index')}";

$.post(url,{"mobile_phone":mobile_phone},function(data){

alert(data);

console.log(data);

});

}

function submit(){

var mobile_phone=$("#mobile_phone").val();

var mobile_code=$("#mobile_code").val();

$.post("{:url('Index/yz')}",{"mobile_phone":mobile_phone,"mobile_code":mobile_code},function(data){

alert(data);

});

}

后台代码:两个控制器(Sms处理接口;Index处理页面显示和表单提交)

/**

* Created by PhpStorm.

* User: shzk

* Date: 2017/4/14

* Time: 10:13

*/

namespace app\index\controller;

use think\Controller;

use think\Cookie;

class Sms extends Controller {

public function index(){

if(request()->isPost()){

$mobile_phone=input('post.mobile_phone');

// 短信内容

$vacode=rand('111111','999999');

//设置验证码cookie为300秒,即五分钟内输入验证码都有效果

Cookie::set('mobile_vcode',$vacode,300);

$message="[SMS]您的验证码是:".$vacode."。请不要把验证码泄露给其他人。";

$sms_name='*****';//短信平台帐号

$sms_pwd='*****';//短信平台密码

$statusStr=array(

"0"=>"短信发送成功",

"-1"=>"参数不全",

"-2"=>"服务器空间不支持,请确认支持curl或者fsocket,联系您的空间商解决或者更换空间!",

"30"=>"密码错误",

"40"=>"账号不存在",

"41"=>"余额不足",

"42"=>"帐户已过期",

"43"=>"IP地址限制",

"50"=>"内容含有敏感词"

);

$smsapi="http://api.smsbao.com/";

$user=$sms_name;//短信平台帐号

$pass=md5("$sms_pwd");//短信平台密码

$content=$message;//要发送的短信内容

$phone=$mobile_phone;//要发送短信的手机号码

$sendurl=$smsapi."sms?u=".$user."&p=".$pass."&m=".$phone."&c=".urlencode($content);

$result=file_get_contents($sendurl) ;

echo $statusStr[$result];

}

}

}

/*

*/

namespace app\index\controller;

usethink\Controller;

usethink\Cookie;

class Index extends Controller{

public function index(){

return$this->fetch("Index/index");

}

public function yz(){

if(request()->isPost()){

$phone=input('post.mobile_phone');

$code=input('post.mobile_code');

$cookie_code=Cookie::get('mobile_vcode');

if($code==$cookie_code){

$this->success("yes");

}else{

$this->error("error");

}

}else{

$this->error("error");

}

}

}

如果你看了这篇博文对你有收获,请在右下角给本尊点个喜欢,蟹蟹...

本站以现代、古代情诗为主,情诗网创办于2013年,以原创爱情诗歌、经典情诗、现代情诗、古代情诗、英文情诗、情诗绝句为主并收集古诗、古诗词、诗歌大全、诗词名句的文学门户。方便您下次继续阅读;可以放在浏览器的收藏夹中(快捷键Ctrl+D);或者看到喜欢或者有趣的诗词可以通过分享按钮给你的好友分享;情诗网是目前最全情诗大全网站之一。并欢迎广大诗歌爱好者阅览投稿!喜欢本站的话请大家把本站告诉给你朋友哦!地址是 www.qingshiwang.com !

php源码更换短信宝接口教程,Thinkphp5结合sms-bao短信宝手机短信接口使用相关推荐

  1. FPS教程附带源码 更换基址 编译可用 包括csgo cf

    FPS教程附带源码 更换基址 编译可用 有需要可以联系我 包括csgo cf

  2. 最新酒店订房小程序源码系统+前端+后端+完整搭建教程

    2022年最新接口酒店订房小程序源码系统,有完整搭建教程,非常给力.实现在线订房订餐功能,功能十分强大. 小程序源码下载地址:春哥技术博客

  3. 梦幻诛仙linux纯端架设教程,梦幻诛仙 一键端搭建iOS安卓双端+完整后台源码+各种工具附带视频架设教程...

    游戏说明: 梦幻诛仙一键端搭建iOS安卓双端+完整后台源码+各种工具,视频架设教程 在游戏内当前聊天窗口输入  dmmhzxnb ,开启后台.  提示GM后台已开启. 在左上角Press Enter ...

  4. Python基于OpenCV的实时疲劳检测[源码&演示视频&部署教程]

    1.图片演示 2.视频演示 [项目分享]Python基于OpenCV的实时疲劳检测[源码&演示视频&部署教程]_哔哩哔哩_bilibili 3.检测方法 1)方法 与用于计算眨眼的传统 ...

  5. Python实现飞机大战-第二部分(附源码、素材、超详细教程)

    飞机大战第二部分 1.前言 2.飞机射击 2.1.添加子弹的相关设置 2.2.创建文件bullet.py 2.3.修改game_functions.py 2.4.修改mian.py 2.5.射击效果 ...

  6. 首发仿拼多多源码,程序完整版+安装教程+完美运营

    介绍: 1.添加店铺 2.添加店铺的商品链接 3.添加用户的账号 首发仿拼多多源码,程序完整版+安装教程+完美运营 后台访问地址: 域名/admin.php 账号:admin 密码:123456 网盘 ...

  7. 【动手配置全景云平台系列】krpano全景网站源码微信打赏功能配置使用教程

    仿720云krpano全景网站源码微信打赏功能配置使用教程,整合了微信打赏程序后,还需要配置全景平台的微信商户参数(已配置微信设置). 1,登录微信商户平台,找到微信商户号.设置支付密钥. 查看支付密 ...

  8. macOS 音频编辑剪切软件源码支持mp3等格式(教程含源码)

    实战需求 macOS 音频编辑剪切软件源码支持mp3等格式(教程含源码) 本文价值与收获 看完本文后,您将能够作出下面的界面 看完本文您将掌握的技能 支持剪切音频 支持复制音频 支持删除音频 支持un ...

  9. 微猫恋爱聊妹术V2 4.1.0 小程序源码-多开版-附安装教程

    微猫恋爱聊妹术V2 4.1.0 小程序源码-多开版-附安装教程 源码介绍: 一.后台: 1.全新独立后台大更新,让操作更简单! 2.新增智能客服消息功能: a.关键字客服消息支持多信息触发(已达官方最 ...

  10. 社区拼团商城小程序源码+完整前后端+安装部署教程

    分享一个最新的社区拼团商城小程序源码+完整前后端+安装部署教程,功能支持界面diy+团长+供应商+拼团+秒杀+优惠券+菜谱+积分+群接龙+充值+预售+配送等,整合线下社区资源,模式丰富. 系统有总后台 ...

最新文章

  1. python数据库抓取并保存_python:微信消息抓取、转发和数据库存储及源码
  2. MOSS 2007 User Profile 系列 索引
  3. webpack 读取文件夹下的文件_webpack基本介绍及使用
  4. Dubbo(十五)springboot工程dubbo整合SpringCloud Hystrix
  5. 初中计算机网络的教案20分钟,初中网络安全教育教案
  6. 快来被子里 看看我的夜光收钱码!
  7. 做生意、做营销常犯的10个错误和对策
  8. 帮内推 | 免费送50个推荐算法工程师的高薪offer!
  9. WinError 126 asmjit.dll or one of its dependencies.
  10. 揭露淘宝不良商家,利用UI设计缺陷进行恶意修改销量以及评价!
  11. On-Ramp算法参考资料
  12. 理解Mach-O文件格式(1)
  13. 2-管理Audio焦点(Managing Audio Playback)
  14. 网络基础:ISO网络七层模型
  15. 软件架构设计与需求分析方法论
  16. MATLAB-在命令行估计状态空间模型
  17. Flex 2.0 软件及文档下载
  18. java 虚拟机设置 Xms Xmx PermSize MaxPermSize
  19. 6-7 十进制转换二进制 (15分)
  20. 如何解决Labview卸载不干净,error1721的问题

热门文章

  1. 一大波64位手机处理器来袭
  2. BetterDisplay Pro Mac显示器校准工具
  3. Logback 使用详解
  4. screen安装与命令详解
  5. Unity用户手册2019.3(中文版)1.3.2 资源包
  6. mysql中树表和主子表是什么
  7. 微信支付完成或取消后在ios系统回跳到Safari默认浏览器的解决方案
  8. 服务器physx性能测试,PhysX有多吃性能?
  9. vueRouter4.0+ts
  10. H5+CSS3玩转骰子