php传值方式和ajax的验证功能
时间:2020-10-31 16:57:15|栏目:PHP代码|点击: 次
PHP前台传值到后台进行验证的3种方式
1.不外乎就是post,get和ajax方式
post和get方式就是在表单上用method方式规定主要就是ajax动态传值进行后台验证
2.ajax 动态传值代码如下
//给调用ajax的这里设一个函数 function u_ajax(uname,upass){ //创建ajax if(window.XMLHttpRequest){ xmlhttp = new XMLHttpRequest(); }else{ xmlhttp = new ActiveObject(“Microsoft.XMLHTTP”); } //打开一个页面 xmlhttp.open(“post”,”../dao/loginAction.php”,true); //在用post方式传值的时候要加上这句,不然后台会收不到 xmlhttp.setRequestHeader(“Content-type”,”application/x-www-form-urlencoded”); //这里传值过去 xmlhttp.send(“uname=”+uname+”&&”+”upassword=”+upass); //准备返回处理 xmlhttp.onreadystatechange=function(){ if(xmlhttp.readyState == 4 && xmlhttp.status == 200 ){ //这里是返回的值 var res = xmlhttp.responseText; //返回处理 if(res == "errn"){ document.getElementById("err").style.visibility="visible"; document.getElementById("err").style.color="red"; document.getElementById("err").innerHTML="账号或密码错误!"; return false; }else{ //若无返回值则定为空 document.getElementById("err").innerHTML=""; } } } }//ajax
/注意,在ajax返回后,不管返回与否,最后函数的返回是underfined/这时就可以用如下方法对传入的值进行验证,可以先判断,如果返回的是错语的标签,责让值写进一个hidden中的标签中,再用textContent来读是否写入了我们规定的值,从而知道输入的值验证是否正确;
如果正确则返回return true ,如果错误则返回false;
由于ajax不任返回何值,都是underfined的情况,所以我们要用另一个单独的函数去调用ajax函数,还不能返函数
//调用上面的函数,并通过上面生成的值进行判断 function lg_verity(){ //调用上面的函数 ,这里返回了,那里面ajax部分就不有用了 my_lg_verity(); //得到内容的值 var errText = document.getElementById("err").textContent; //这里用来判断是否有写入值,判断是否可以跳转的 if(errText.length>0){ return false; } }