<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>post请求</title>
</head>
<body>
<label for="username">
<span>用户名:</span><input type="text" id="username" class="username"/>
</label><br/>
<label for="password">
<span>密码:</span><input type="text" id="password" class="password"/>
</label><br/>
<button>登陆</button>
<script>
var usernameInput=document.querySelector('.username');
var passwordInput=document.querySelector('.password');
var btn=document.querySelector('button');
btn.onclick=function(){
//兼容性问题,考虑兼容IE使用 ActiveXObject() 非IE使用XMLHttpRequest()
// xhr = window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("");
var xhr=new XMLHttpRequest();
xhr.onreadystatechange=function(){
if(xhr.readyState==4){
if(xhr.status==200){
var jsonData=JSON.parse(xhr.responseText);
if(jsonData.infoCode==0){
alert('登陆成功');
}else if(jsonData.infoCode==1){
alert('登陆失败');
}else{
alert('网络异常');
}
}
}
};
xhr.open('post','03post请求.php',true);
//构建post表单数据,使用FormData类构建数据
var datas=new FormData();
datas.append('uname',usernameInput.value);
datas.append('upass',passwordInput.value);
xhr.send(datas);
}
</script>
</body>
</html>
<?php
$username=$_POST['uname'];
$password=$_POST['upass'];
$success=array('msg'=>"ok");
$con=mysqli_connect('localhost','root','','beixi');
if($con){
mysqli_query($con,'set names utf8');
mysqli_query($con,'set character_set_client=utf8');
mysqli_query($con,'set character_set_results=utf8');
$sql="select * from userinfo where 1";
$res=$con->query($sql);
if($res->num_rows>0){
$info=[];
for($i=0;$row=$res->fetch_assoc();$i++){
$info[$i]=$row;
}
}
//判断是否登陆成功
$flag=false; //默认false表示登陆失败,如果登陆成功,则变成true
for($j=0;$j<count($info);$j++){
if($info[$j]['username']==$username){
if($info[$j]['password']==$password){
$success['infoCode']=0;
$flag=true;
break;
}
}
if($flag==false){
$success['infoCode']=1;
}
}
}else{
$success['infoCode']=2;// 0代表成功;1 代表失败; 2代表数据库连接失败
}
echo json_encode($success);
?>
填写之后都是网络异常