
批改狀態(tài):合格
老師批語(yǔ):寫之前先規(guī)劃一下, 不要上來(lái)就寫, 把步驟想清楚, 就不難了
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Ajax---GET請(qǐng)求</title>
</head>
<body>
<script>
//1,創(chuàng)建ajax對(duì)象
var ajaxGet = new XMLHttpRequest();
//2,監(jiān)聽(tīng)請(qǐng)求
// 每當(dāng) readyState 改變時(shí),就會(huì)觸發(fā) onreadystatechange 事件。(存儲(chǔ)函數(shù)(或函數(shù)名),每當(dāng) readyState 屬性改變時(shí),就會(huì)調(diào)用該函數(shù)。)
// status : 200: "OK" 。 404: 未找到頁(yè)面
ajaxGet.onreadystatechange = function(){
if(ajaxGet.readyState === 4 && ajaxGet.status === 200){
// responseText 獲得字符串形式的響應(yīng)數(shù)據(jù)。
console.log(ajaxGet.responseText);
}
};
//3,初始化參數(shù)
//ajax.open(請(qǐng)求類型,請(qǐng)求URL,是否異步)
ajaxGet.open("GET",'test.php',true);
//4,發(fā)送請(qǐng)求
ajaxGet.send(null);
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Ajax---POST</title>
</head>
<body>
<script>
//1,創(chuàng)建ajax對(duì)象
var ajaxPost = new XMLHttpRequest();
// 2,監(jiān)聽(tīng)
ajaxPost.onreadystatechange=function(){
if(ajaxPost.readyState === 4 && ajaxPost.status === 200){
console.log(ajaxPost.responseText);
}
};
// 3,提交參數(shù)初始化
ajaxPost.open("POST","test.php",true);
// 4,設(shè)置請(qǐng)求頭,模擬表單數(shù)組類型發(fā)送
// application/x-www-form-urlencoded是默認(rèn)值
ajaxPost.setRequestHeader('content-type','application/x-www-form-urlencoded');
//準(zhǔn)備要發(fā)送的數(shù)據(jù)
var user = {
account:"admin",
password:123456,
};
//轉(zhuǎn)換user為JSON字符串
var userdata = JSON.stringify(user);
ajaxPost.send(userdata);
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Ajax---POST請(qǐng)求2</title>
</head>
<body>
<script>
// 1,創(chuàng)建對(duì)象
var ajaxPost = new XMLHttpRequest();
// 2,監(jiān)聽(tīng)
ajaxPost.onreadystatechange=function(){
if(ajaxPost.readyState ===4 && ajaxPost.status === 200){
console.log(ajaxPost.responseText);
}
};
// 3,提交參數(shù)初始化
ajaxPost.open("POST","test1.php",true);
// 4,json字符串?dāng)?shù)據(jù)提交
ajaxPost.setRequestHeader('content-type','application/json;charset=utf-8');
var user = {
account:"admin",
name:"管理員",
};
// 5,提交
var datauser = JSON.stringify(user);
ajaxPost.send(datauser);
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ajax_POST__formData</title>
</head>
<body>
<script>
// 1,創(chuàng)建對(duì)象
var ajaxform=new XMLHttpRequest();
ajaxform.onreadystatechange = function(){
if(ajaxform.readyState === 4 && ajaxform.status === 200)
{
console.log(ajaxform.response);
}
};
ajaxform.open("POST","test2.php",true);
// FormData 接口提供了一種表示表單數(shù)據(jù)的鍵值對(duì)的構(gòu)造方式
var data = new FormData();
data.append("account","admin");
data.append("password","123456");
ajaxform.send(data);
</script>
</body>
</html>
<?php
if($_GET){
$user['account'] = "admin";
$user['user'] = "管理員";
$user['tel'] = 10010;
//將數(shù)據(jù)轉(zhuǎn)換為JSON
echo json_encode($user);
}
if($_POST){
// print_r($_POST);
//轉(zhuǎn)換為字符串
$data = key($_POST);
//將data轉(zhuǎn)換為PHP可以處理的數(shù)據(jù)(json轉(zhuǎn)為PHP對(duì)象、數(shù)組)
$user = json_decode($data);
print_r($user);
$user = json_decode($data,true);
print_r($user);
echo $user['account'];
echo '<hr>';
}
<?php
$data = file_get_contents('php://input');
//echo $data;
$user = json_decode($data,true);
echo $user['name'];
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號(hào)
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號(hào)