首页 > 编程知识 正文

ajax提交与php验证是什么,php使用ajax验证用户名是否存在

时间:2023-12-27 22:26:14 阅读:323951 作者:BVEY

本文目录一览:

php与ajax密码验证

第十四行要注释,

其它无语法错误

//username=document.regform.username.value;

逻辑上没看懂

check_psw1() 函数你没用过

regcheck.php 接收了两个变量

你只传入一个

var a=ajaxpub("regcheck.php?"+url+"="+psw2);

好像你是在等回答者帮你做完对吧

就是看密码是否一样不用php,在客户端和服务器端传变量会很慢

可以这样改

check_psw2()

function check_psw2(url,psw2){

if(document.regform.psw1.value==document.regform.psw2.value)

{

document.getElementById("psw02").innerHTML ="一样一样一样的";

}

else

{

document.getElementById("psw02").innerHTML ="好像不一样";

}

}

要想看密码对不对

还可以再改check_psw2

function check_psw2(url,psw2){

if(document.regform.psw1.value==document.regform.psw2.value)

{

document.getElementById("psw02").innerHTML ="俩密码一样";

var a=ajaxpub("regcheck.php?"+url+"="+psw2); 得到密码对不对在a中

if(a=="ok")

document.getElementById("psw01").innerHTML="密码完全正确,加10分";

else

document.getElementById("psw01").innerHTML="密码错了,扣10分";

}

else

{

document.getElementById("psw02").innerHTML ="不一样";

}

}

当然这样就要改.php文件了

?php

//echo $psw1=$_GET['psw1'];

//echo $psw2=$_GET['psw2'];

if ($_GET['psw2']=="1234" )

{

echo "ok";

}

else

{

echo"no";

}

?

还有,你这个js得到的密码不能处理中文乱码问题,

也就是说密码不能是中文的,也不能是除了英语外的语言文字,

实际在我的ie上http_request.responseText要改成http_request.responsebody不可乱用,会出人命的

php AJAX验证表单的一点问题

建议你在JavaScript里面使用一个“全局”变量,比如isUsernameAvailable,并置它的初始值为false,而且在提交表单时检查它的值,然后才能提交的。并且只有Ajax检查用户名不存在才能赋值为true。

PS:http_Ajax.onreadystatechange=function(){}应该放到

http_Ajax.open("GET",url,true);前面的。

thinkphp 验证是不是ajax提交

有两种方式,如下:

第一种方式:

PHP判断ajax请求的原理:

在发送ajax请求的时候,我们可以通过XMLHttpRequest这个对象,创建自定义的header头信息, 在jquery框架中,对于通过它的$.ajax, $.get, or $.post方法请求网页内容时,它会向服务器传递一个HTTP_X_REQUESTED_WITH的参数,php中就是在header一层判断是否是ajax请求,对应的根据$_SERVER['HTTP_X_REQUESTED_WITH']判断。

/**

* 当前请求是否ajax请求

*

* @access public

* @return bool

*/

function isAjax()

{

return isset($_SERVER['HTTP_X_REQUESTED_WITH']);

}

注意:

● 一般情况下$_SERVER['HTTP_X_REQUESTED_WITH']默认是XMLHttpRequest

● $_SERVER['HTTP_X_REQUESTED_WITH']也可以自定义创建的,使用XMLHttpRequest.setRequestHeader(name,value);参考文章:

第二种方式:

通过前台给php传一个type参数来判断,type=1则是ajax,否则是普通提交。

请问个php+ajax验证码验证的问题

这是AJAX缓存问题,LZ 需要保证传过去的页面每次都不一样:办法有:

1、在服务端加 header("Cache-Control: no-cache, must-revalidate");(如php中)

2、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("If-Modified-Since","0");

3、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("Cache-Control","no-cache");

4、在 Ajax 的 URL 参数后加上 "?fresh=" + Math.random(); //当然这里参数 fresh 可以任意取了

5、第五种方法和第四种类似,在 URL 参数后加上 "?timestamp=" + new Date().getTime();

6、用POST替代GET:不推荐 [POST的数据是不缓存的]

1、加个随机数

xmlHttp.open("GET", "ajax.asp?now=" + new Date().getTime(), true);

php怎么判断是否是 ajax 提交

思路:在你进行ajax请求的时候,设置一个文件头信息的变量,在php端判断这个信息是否存在以及是否等于自己设置的值,就可以知道是否是ajax请求了。

做法:js端发送头信息

对象.setRequestHeader("变量名","变量值");

如 xmlHttp..setRequestHeader("X_REQUESTED_WITH","XMLHttpRequest");

php端接受信息,注意此时接受的变量存在 $_SERVER['HTTP_变量名'];中,

如上面的例子则为$_SERVER['HTTP_X_REQUESTED_WITH'];

echo isset($_SERVER['HTTP_X_REQUESTED_WITH'])($_SERVER['HTTP_X_REQUESTED_WITH']=='XMLHttpRequest')?'it is ajax':'it is not ajax';

注释:js和jquery中有些许不同,自己注意一下,再者变量名字不要冲突了

附加:如果这是你自己的网站,你只是自己区别一下的话,这样就可以了,但是,它是防止不了别人盗用你的ajax数据的,因为这些都是可以模拟的,一个好的方法是设计session验证之类的。

我用AJAX+php做了个验证页面,请问最近该如何验证所有表单内容是否通过?

楼上已经回答了,客户端提交的动摇再提交前用JS验证一遍,网上有很多现成的正则,改改就能用,或者用上说的JQ的一个控件,再接收到请求数据后再用PHP验证一遍(永远不要相信用户)。同理正则验证。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。