>  기사  >  백엔드 개발  >  PHP는 Ali SMS 확인 방법 코드를 구현합니다.

PHP는 Ali SMS 확인 방법 코드를 구현합니다.

小云云
小云云원래의
2018-02-08 09:28:171571검색

최근에는 PHP에서 SMS 확인의 효과를 구현하고 싶습니다. PC 웹사이트를 구축할 때 사용자를 등록하여 SMS 확인을 사용하거나 비밀번호 검색, 사용자 정보 확인 및 기타 기능을 사용할 수 있습니다. 이 기사는 주로 PHP에서 Alibaba Dayu SMS 확인을 구현하는 예제 코드에 대한 관련 정보를 소개합니다. 관심 있는 친구가 이를 참조하여 모든 사람에게 도움이 되기를 바랍니다.

첫 번째 단계

Alibaba에 로그인하여 계정 등록, 사용자 관리 센터에서 애플리케이션 생성, AppKEY 및 앱 비밀 확인 및 서명 구성

두 번째 step

애플리케이션 관리에서 SDK 다운로드를 선택하거나 http://www.jb51.net/softs/312325.html을 직접 클릭하여 다운로드하세요. 무료입니다. 다운로드한 리소스의 압축을 풀고 다음과 같이 ThinkPHPLibraryVendor 디렉토리에 넣으세요. 사진에 표시됨

모든 PHP 파일이 필요한 것은 아닙니다. 그림과 같이 Alidayu 폴더 아래에 있는 PHP 파일을 사용하고 각각 Alidayu에서 해당 PHP 파일을 열고 첫 번째 줄에 코드를 추가하면 됩니다. 나에게서 다운로드 받았습니다. 링크가 전송되었으므로 이 코드를 추가할 필요가 없습니다. 내가 추가했기 때문입니다.)


namespace Vendor\Alidayu;

목적은 호출 시 실패를 방지하는 것입니다


세 번째 단계

HTML로 작성할 수 있습니다.


<p class="form-group">
 <p class="field field-icon-right">
  <input type="text" id="admin" class="input" name="admin" placeholder="用户名" data-validate="required:请填写用户名,length#>=5:用户长度不符合要求" />
  <span class="icon icon-user"></span>
 </p>
</p>


<p class="form-group">
 <p class="field field-icon-right">
  <input id="mobile" type="tel" class="input" name="mobile" placeholder="手机号码" onblur="checkmobile(this)" />
  <span class="icon icon-mobile"></span>
 </p>
</p>


 <button id="sendmsg">获取验证码</button>


4단계

JQ 코드 작성(인증 코드 전송 후 카운트다운하는 기능이며 POST가 백그라운드를 통과하고 백그라운드에서 반환되는 데이터는 각각 0, 1, 2가 서로 다른 기능에 해당합니다.) 이 코드는 다른 사람의


<script >

 /*-------------------------------------------*/
 var InterValObj; //timer变量,控制时间
 var count = 60; //间隔函数,1秒执行
 var curCount;//当前剩余秒数
 var code = ""; //验证码
 var codeLength = 6;//验证码长度

 $(function () {
  $(&#39;#sendmsg&#39;).click(function () {
   $.ajax({
    type: "POST",
    url: "/User/folder/child/obtainyzm",
    data: "admin=" + $(&#39;#admin&#39;).val()+"&mobile="+$("#mobile").val() ,
    success: function (result) {
     if(result==0){
      curCount = count;
      //设置button效果,开始计时
      $("#sendmsg").css("background-color", "LightSkyBlue");
      $("#sendmsg").attr("disabled", "true");
      $("#sendmsg").val("获取" + curCount + "秒");
      InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
      // alert("验证码发送成功,请查收!");
     }
     if(result==1){

      alert("用户名和手机号不匹配!");
     }
     if(result==2){

      alert("用户名不存在!");
     }

    },
    dataType: &#39;json&#39;

   })
  })
 })

 function SetRemainTime() {

  if (curCount == 0) {
   window.clearInterval(InterValObj);//停止计时器
   $("#sendmsg").removeAttr("disabled");//启用按钮
   $("#sendmsg").css("background-color", "");
   $("#sendmsg").val("重发验证码");
   code = ""; //清除验证码。如果不清除,过时间后,输入收到的验证码依然有效
  }
  else {
   curCount--;
   $("#sendmsg").val("获取" + curCount + "秒");
  }
 }
</script>

을 기반으로 하며 각각 사용자 이름과 휴대전화 번호를 나타내는 두 개의 매개변수 admin과 mobile이 있습니다.

5단계

함수 코드 작성


public function obtainyzm(){

 $mobile = $_POST[&#39;mobile&#39;];//获取手机号码
 $admin =$_POST[&#39;admin&#39;];//获取用户名

 $user = M(&#39;db_admin&#39;)->where(array(&#39;admin&#39;=>$admin))->find();

 /************引入*************/
 Vendor(&#39;Alidayu.TopClient&#39;);
 Vendor(&#39;Alidayu.AlibabaAliqinFcSmsNumSendRequest&#39;);
 Vendor(&#39;Alidayu.ResultSet&#39;);
 Vendor(&#39;Alidayu.RequestCheckUtil&#39;);

 $c = new \Vendor\Alidayu\TopClient;
 $req = new \Vendor\Alidayu\AlibabaAliqinFcSmsNumSendRequest;

 /*************配置***************/
 $code = randCode(4);//随机验证码
 $c->appkey = &#39;23******&#39;;
 $c->secretKey = &#39;6f73a******************&#39;;
 $req->setSmsType("normal");
 $req->setSmsFreeSignName("xx的测试");
 $req->setSmsParam("{code:&#39;$code&#39;}");
 $req->setRecNum("$mobile");
 $req->setSmsTemplateCode("SMS_3******");

 if($user)
 {
  if($user[&#39;mobile&#39;] == $mobile)
  {
   /*************发送验证码短信,并把验证码作为新密码保存到服务器上***************/
   //$c->execute($req); //不要开启,开启后就会有短信到账,一次几分钱..在服务器上看新密码就好
   $newpwd[&#39;pwd&#39;] = md5($code);
   D(&#39;db_admin&#39;)->where(array(&#39;admin&#39;=>$user[&#39;admin&#39;]))->save($newpwd);
   $this->ajaxreturn(0);//用户名密码匹配
  }
  else
  {
   $this->ajaxreturn(1);//用户名和手机号不匹配
  }
 }
 else
 {
  $this->ajaxreturn(2); //用户名不存在
 }
 $this->display();
}//获取验证码

관련 권장 사항:


PHP를 사용하여 SMS 확인 코드를 보내는 방법

Alibaba Cloud PHP SMS SMS 서비스 확인을 보내는 방법 code

JS는 SMS 확인 코드

를 구현합니다.

위 내용은 PHP는 Ali SMS 확인 방법 코드를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.