当需要使用ajax将多个数据发送到后台时,可以使用一个数组收集所有要发送的数组,然后将这个数组作为参数发送到后台处理
这里以用户登录系统的验证为例
1、JS部分
var user_name=$("#username").val();
var user_pwd=$("#password").val();
var login_info=new Array(2);//定义数组
login_info[0]=user_name;
login_info[1]=user_pwd;
$.ajax({
url:'http://www.xxx.com/login_info/' + login_info,//提交访问的URL,地址后缀不要加html
type:'GET',
dataType:'text',
timeout:1000,
error:function(){
alert('操作频繁,请稍后再试!');
},
success:function(data){
var return_info=eval("("+data+")");
var result=Number(return_info);
if(result>0){
location.href="http://www.zxzxzx.com";
}
else{
alert("用户名或密码错误!");
}
}
})
2、php部分
注意:ajax传递过来的数组信息会被解析成字符串,每个数据项之间用“,”分隔,因此可以按照“,”对字符串分割成数组
$user=M('User');
include"session.php";
session_start();
if(IS_AJAX){
$login_info=$_GET['login_info'];//获取ajax发送的数据
$login_info_array=explode(",",$login_info);//对字符串进行分割
$user_name=$login_info_array[0];
$user_pwd=$login_info_array[1];
$condition['user_name']=$user_name;
$condition['user_pwd']=$user_pwd;
$check=$user->where($condition)->count();//数据库数据查询
if($check>0){
$_SESSION["user"]=$check;
}
$this->ajaxReturn($check);//将结果返回给前台
}