下面是一段登录表单的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的登录控件加上下面这段验证码登录验证控制,也就是原来登录表单没有验证码功能,现在我需要加一个验证码功能,验证码加上了,但是没有实现登录验证码功能(也就是输入不输入验证码都一样现在,我需要实现验证验证码错误和正确这个功能,也就是用户要登录就必须输入正确验证码)
只需要做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));
}
在 Ajax 里把验证码带到后端验证嘛