cncpvc 2021-10-11 14:13 采纳率: 85.7%
浏览 55
已结题

如何把这段JS代码加上验证码控件功能!

下面是一段登录表单的JS控件代码

<script>
    function check_login()
    {
        var pid=$("#pid").val();
        var key=$("#key").val();
        var connect=$("#connect").val();
        var ii = layer.load(5, {shade:[0.1,'#fff']});
        $.ajax({
            type : "POST",
            url : "Ajax.php?act=Login",
            data : {pid,key,connect},
            dataType : 'json',
            timeout: 15000, //ajax请求超时时间15s
            success : function(data) {                      
                layer.close(ii);
                layer.msg(data.msg);
                if(data.code==1){
                    setTimeout(function () {
                    location.href="./";
                    }, 1000); //延时1秒跳转
                }else{
                    $("#login_form").removeClass('shake_effect');  
                    setTimeout(function()
                    {
                        $("#login_form").addClass('shake_effect')
                    },1); 
                }
            },
            error:function(data){
                layer.close(ii);
                layer.msg('服务器错误');
                }
        });
    }
</script>


这里是一段验证码验证的php表达内容:

if(isset($_REQUEST['authcode'])){
    session_start();
    //strtolower()小写函数
    if(strtolower($_REQUEST['authcode'])== $_SESSION['authcode']){
      //验证码输入正确跳转页面 //建立请求
      验证通过请求内容代码写在这里
      echo $html_text;
    }else{
      //验证码输入错误提示以及跳转页面
      echo "<script language=\"javascript\">";
      echo "alert('验证码输入错误!');";
      echo "document.location=\"index.php\"";
      echo "</script>";
    }
    exit();
  }

我就是想把上面js的登录控件加上下面这段验证码登录验证控制,也就是原来登录表单没有验证码功能,现在我需要加一个验证码功能,验证码加上了,但是没有实现登录验证码功能(也就是输入不输入验证码都一样现在,我需要实现验证验证码错误和正确这个功能,也就是用户要登录就必须输入正确验证码)

  • 写回答

2条回答 默认 最新

  • 一把编程的菜刀 2021-10-11 15:07
    关注

    只需要做3个步骤即可,第一,在你的页面上加上需要输入验证码的文本框,比如假设 你设置的文本框为:

    <input type="text" id="code" />
    
    

    然后在你上面的js中加上获取该验证码文本框的值,即通过

      var code = $("#code").val();//获取验证码输入
                data : {pid,key,connect,code},
    

    然后在Ajax.php?act=Login 对应的登录代码里加上以下类似的判断代码:

     if(strtolower($_REQUEST['authcode'])!= $_SESSION['authcode']){
          $data['code']=0;
           $data['msg']=‘验证码错误’;
         exit(json_encode($data));
        }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月19日
  • 已采纳回答 10月11日
  • 创建了问题 10月11日

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器