云通讯短信验证码实例

1.注册登录云通讯     http://www.yuntongxun.com/user/login

2.创建应用得到应用相关信息

3.下载对应相关的Demo示例  http://www.yuntongxun.com/doc/rest/sms/3_2_2_3.html

4.send.php文件添加代码方便后续操作

session_start();
//随机验证码
$code = rand(100000,999999);
//生成的验证码存放到session,方便后续的验证操作
$_SESSION['code']=$code;$telphone = $_GET['telphone'];
$res = sendTemplateSMS($telphone,array($code,1),"1");//手机号码,替换内容数组,模板ID
// var_dump($res);
if($res){echo 1;
}else{echo 0;
}

5.ajax发送手机号到send.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN"><head><title>登录操作</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="description" content="" /><meta name="keywords" content="" /><script type="text/javascript" src="//cdn.bootcss.com/jquery/3.1.1/jquery.js"></script><script>var itime = 59; //定义一个变量,倒计时初始化,从59秒开始function getTime() {if (itime >= 0) {if (itime == 0) {//倒计时变成0时,//要清除计时器
                clearTimeout(act);//设置按钮为初始状态
                $("#getCodeBtn").val('免费获取手机验证码').attr('disabled', false);itime = 59;} else {//延迟一秒中执行该函数。var act = setTimeout('getTime()', 1000);//把倒计时的秒显示到按钮中
                $("#getCodeBtn").val('还剩' + itime + '');itime = itime - 1;}}}$(function() {//定义一个函数,用于完成倒计时效果
        $("#getCodeBtn").click(function() {//获取输入的手机号码var telphone = $("#telphone").val();//ajax请求文件,调用短信发送的接口
            $.ajax({type: 'get',url: 'send.php?telphone=' + telphone,success: function(msg) {//判断调用短信发送接口是否成功,if (msg == 1) {//调用接口已经成功
                        alert('短信验证码已经发送成功');$("#getCodeBtn").attr('disabled', true); //要禁用该按钮//调用一个函数,完成倒计时效果。
                        getTime();}}});});});</script><style type="text/css"></style>
</head><body><div><form action="action.php" method="post"><table><tr><td>姓名</td><td><input type="text" name="name" /></td></tr><tr><td>手机</td><td><input type="text" name="telphone" id="telphone" /></tr><tr><td>验证码</td><td><input type="text" name="checkcode" /><input type="button" value="免费获取手机验证码" id="getCodeBtn" /></td></tr><tr><td></td><td><input type="reset" value="重填" />&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="注册" /></td></tr></table></form></div>
</body></html>

6.action.php验证是否成功接受

<?php
//接收输入的手机验证码
$checkcode = $_POST['checkcode'];
session_start();
$code = $_SESSION['code'];
//把生成发送的验证码
//和用户手机收到的验证码进行比对
if($code==$checkcode){echo 'ok';
}else{echo 'no';
}

 

转载于:https://www.cnblogs.com/mengor/p/8048015.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/354181.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 数组 内存_图解Java数组的内存分配

1. Java数组是静态的Java是静态语言&#xff0c;所以Java的数组也是静态的&#xff0c;即&#xff1a;数组被初始化后&#xff0c;长度不可变静态初始化&#xff1a;显式指定每个数组元素的初始值&#xff0c;系统决定数组长度String[] books new String[]{"疯狂Java讲义…

libgdx和Kotlin –类[2D平台原型]

这篇文章是libgdx和Kotlin文章的后续文章。 我已经决定开发一个简单的2D平台程序的原型&#xff08;沿着我的早期文章中的Star Assault进行介绍&#xff09;&#xff0c;但是我一直在使用和学习Kotlin&#xff0c;而不是Java。 对于本教程&#xff0c;该项目应处于上一篇文章…

Python 基础 - 4.3 random模块

程序中有很多地方需要用到随机字符&#xff0c;比如登录网站的随机验证码&#xff0c;通过random模块可以很容易生成随机字符串 >>> random.randomrange(1,10) #返回1-10之间的一个随机数&#xff0c;不包括10 >>> random.randomint(1,10) #返回1-10之间的一…

java中的方法在哪里_Java中的本机方法是什么,应在哪里使用?

小编典典Java中的本机方法是什么&#xff0c;应在哪里使用&#xff1f;一旦看到一个小例子&#xff0c;就很清楚了&#xff1a;Main.java &#xff1a;public class Main {public native int intMethod(int i);public static void main(String[] args) {System.loadLibrary(&qu…

python下载大文件

1. wget def download_big_file_with_wget(url, target_file_name):"""使用wget下载大文件Note: 需要系统安装wget"""import osimport subprocessdownload_process subprocess.Popen(["wget", "-c", "-O", targe…

spring jmx_JMX和Spring –第2部分

spring jmx这篇文章从本教程的第1部分继续。 嗨&#xff0c;在我的上一篇文章中&#xff0c;我解释了如何通过Spring设置JMX服务器以及如何通过身份验证和授权保护对它的访问。 在本文中&#xff0c;我将展示如何实现一个简单的MBean&#xff0c;该MBean允许用户在运行时更改L…

java callable用法_在Java中使用Callable和Future

最近&#xff0c;我们正在开发一个监控仪表板&#xff0c;我们想要ping几个第三方服务器&#xff0c;只是为了检查它们的可用性&#xff0c;或者我们想要调用健康检查。我们正在对服务器进行一系列api调用&#xff0c;这些服务器的IP&#xff0c;用户名和密码被外部化为环境变量…

注意Java 8的[Pri​​mitive] Stream.iterate()中的递归

Tagir Valeev关于Stack Overflow的一个有趣问题最近引起了我的注意。 为了简短起见&#xff08;请阅读问题的详细信息&#xff09;&#xff0c;而以下代码则有效&#xff1a; public static Stream<Long> longs() {return Stream.iterate(1L, i ->1L longs().skip(i…

用java编写生产者消费者问题_用java代码实现生产者和消费者的问题

public class ThreadDemo12 {public static void main(String[] args) {goods gnew goods();Product pronew Product(g);Thread th1new Thread(pro);th1.start();Customer cusnew Customer(g);Thread th2new Thread(cus);th2.start();}}/*** 商品类* author Al菜菜**/class goo…

LeetCode:位运算实现加法

LeetCode&#xff1a;位运算实现加法 写在前面 位运算符 实现加法的思路 两个加数&#xff0c;比如5(101)和6(110)&#xff0c;如何不用加法就能得出两者之和呢&#xff1f; 我们知道二进制计算中&#xff0c;如果使用异或将会产生无进位的两者之和&#xff0c;而两数相与将会产…

[机器学习] 模型评价参数,准确率,召回率,F1-score

很久很久以前&#xff0c;我还是有个建筑梦的大二少年&#xff0c;有一天&#xff0c;讲图的老师看了眼我的设计图&#xff0c;说&#xff1a;“我觉得你这个设计做得很紧张”&#xff0c;当时我就崩溃&#xff0c;对紧张不紧张这样的评价标准理解无能。多年后我终于明白老师当…

Stackoverflow的见解:投票最多的是Spring 4问题

在Stackoverflow上对Spring 4问题进行最投票和回答最多的是什么&#xff1f; 以下是最常见的五个问题和解答。 Spring中的 Component&#xff0c; Controller&#xff0c; Repository和Service批注有什么区别&#xff0c;它们可以互换使用还是具有特定功能&#xff1f; Trans…

java记录登陆时间_Spring security如何实现记录用户登录时间功能

一、原理分析spring security提供了一个接口 AuthenticationSuccessHandler,该接口中只有一个方法&#xff0c;用来进行登录成功后的操作public interface AuthenticationSuccessHandler {/*** Called when a user has been successfully authenticated.** param request the r…

bzoj3680

$模拟退火$ $这种全局最优的问题用模拟退火$ $模拟退火就是每次向四周随机移动&#xff0c;移动的幅度和温度成正比&#xff0c;如果新的位置更优就接受&#xff0c;否则按一定概率接收&#xff0c;概率和温度成正比$ $最后稳定后再在最优解附近蹦跶几下看看有没有更好的$ $你问…

JLBH示例3 –吞吐量对延迟的影响

在这篇文章中&#xff1a; 关于吞吐量对延迟的影响的讨论 如何使用JLBH测量TCP回送 添加探针以测试TCP往返的两半 观察增加吞吐量对延迟的影响 了解必须降低吞吐量才能在高百分位数时获得良好的延迟。 在帖子中&#xff0c;我们看到了考虑协调遗漏的影响或测量延迟一次迭…

java 输入正整数n_java如何输入一个整数 c语言如何输入一个正整数N,再输入N个整数,按从小......

导航:网站首页 > java如何输入一个整数 c语言如何输入一个正整数N,再输入N个整数,按从小... java如何输入一个整数 c语言如何输入一个正整数N,再输入N个整数,按从小... 相关问题: 匿名网友: 可以通过”Scanner“函数 直接输入参数的形式,来实现输入语句,举例: impor…

fastJson去掉指定字段

public static String filterFieldsJson(Object src, Class<?> clazz, String... args) { SimplePropertyPreFilter filter new SimplePropertyPreFilter(clazz, args); return JSON.toJSONString(src, filter); }转载于:https://www.cnblogs.com/Eilen/p/8377953.html

maven依赖最佳实践_Maven最佳实践

maven依赖最佳实践尽管Maven提供了“配置之上的约定”解决方案&#xff0c;但是仍然有足够多的必要配置引起严重的头痛。 在这篇文章中&#xff0c;我将与您分享一些最佳实践&#xff0c;以简化对POM文件的维护。 请勿使用已弃用的引用&#xff0c;例如$ {artifactId}或$ {pom.…

PHP 异常处理

PHP 异常处理 异常用于在指定的错误发生时改变脚本的正常流程。 异常是什么 PHP 5 提供了一种新的面向对象的错误处理方法。 异常处理用于在指定的错误&#xff08;异常&#xff09;情况发生时改变脚本的正常流程。这种情况称为异常。 当异常被触发时&#xff0c;通常会发生&a…

如何使用Elixir和Phoenix快速入门构建CRUD REST API

这篇文章将展示如何使用Elixir和Phoenix框架构建REST API。 重点将是为持久化到Postgres数据库后端的模型提供CRUD&#xff08;创建&#xff0c;读取&#xff0c;更新&#xff0c;删除&#xff09;端点。 我应该警告你&#xff1b; 这是一个简单的例子。 但是&#xff0c;希望它…