為什么點擊查詢時會這樣控制臺:XML 解析錯誤:找不到根元素位置:file:///D:/ss/test.php?number=0行 71,列 3:php代碼如下<?php??
//設(shè)置頁面內(nèi)容是html編碼格式是utf-8
header("Content-Type:text/plain;charset=utf-8");
//header("Content-Type:application/json;charset=utf-8");
//header("Content-Type:text/xml;charset=utf-8");
//header("Content-Type:text/html;charset=utf-8");
//header("Content-Type:application/javacript;charset=utf-8");
//定義一個多維數(shù)組,包含員工的信息,每條員工信息為一個數(shù)組
$staff?=?array?
(
array("name"?=>?"洪七","number"?=>?"101","sex"?=>?"男","job"?=>?"總經(jīng)理"?),
array("name"?=>?"郭晶","number"?=>?"102","sex"?=>?"男","job"?=>?"開發(fā)工程師"?),
array("name"?=>?"黃蓉","number"?=>?"103","sex"?=>?"女","job"?=>?"神經(jīng)病"?)
);
//判斷如果是GET請求,則進行搜索;如果是POST請求,則進行新建
//$_SERVER是一個超全局變量,在一個腳本的全部作用域中都可用,不用使用global關(guān)鍵字
//$_SERVER["REQUEST_METHOD"]返回訪問頁面使用的請求
if?($_SERVER["REQUEST_METHOD"]?==?"GET")?{
search();
}elseif?($_SERVER["REQUEST_METHOD"]?==?"POST")?{
create();
}
//通過員工編號搜索員工
function?search(){
//檢查是否有員工編號的參數(shù)
//isset檢測變量是否設(shè)置;empty判斷值是否為空
//超全局變量$_GRT和$_POST用于收集表單數(shù)據(jù)
if?(!isset($_GET['number'])?||?empty($_GET["number"]))?{
echo?"參數(shù)錯誤";
return;
}
//函數(shù)值外聲明的變量擁有Global作用域,只能在函數(shù)之外進行訪問。
//global關(guān)鍵詞用于訪問函數(shù)內(nèi)的全局變量
global?$staff;
//獲取number參數(shù)
$number?=?$_GET["number"];
$result?=?"沒有找到員工。";
//遍歷$staff多維數(shù)組,查找key值為number的員工是否存在,如果存在,則修改返回值
foreach?($staff?as?$value)?{
if?($value["number"]?==?$number)?{
$result?=?"找到員工:員工編號:".$value["number"].",員工姓名:".$value["name"].
",員工性別:".$value["sex"].",員工職位:".$value["job"];
break;
}
}
echo?$result;
}
//創(chuàng)建員工
function?create(){
//判斷信息是否填寫完全
if?(!isset($_POST["name"]||empty($_POST["name"]
||!isset($_POST["number"]||empty($_POST["number"]
||!isset($_POST["sex"]||empty($_POST["sex"]
||!isset($_POST["job"]||empty($_POST["job"]))?{
echo?"參數(shù)錯誤,能不能寫完整?";
return;
}
//TODO:獲取POST表單數(shù)據(jù)并保存到數(shù)據(jù)庫
//提示保存成功
echo?"員工:".$_POST["name"]."信息保存成功!";
}
?>html代碼如下<!DOCTYPE?html>
<html>
<head>
<meta?charset="UTF-8">
<script?src="js/jquery-3.2.0.js"></script>
<title>Demo</title>
<style>
body,input,button,select,h1{
font-size:?30px;
line-height:?1.8;
}
</style>
</head>
<body>
<h1>員工查詢</h1>
<label>請輸入員工編號:</label>
<input?type="text"?id="keyword"/>
<button?id="search">查詢</button><br>
<p?id="searchResult"></p>
<h1>員工新建</h1>
<label>請輸入員工姓名:</label>
<input?type="text"?id="staffName"/><br>
<label>請輸入員工編號:</label>
<input?type="text"?id="staffNumber"/><br>
<label>請輸入員工性別:</label>
<select?id="staffSex">
<option>男</option>
<option>女</option>
</select><br>
<label>請輸入員工職位:</label>
<input?type="text"?id="staffJob"/><br>
<button?id="save">保存</button>
<p?id="createResult"></p>
<script>
document.getElementById('search').onclick?=?function(){
//發(fā)送Ajax查詢請求并處理
var?request?=?new?XMLHttpRequest();
request.open("GET","file:///D:/ss/test.php?number="+?document.getElementById('keyword').value);
request.send();
request.onreadystatechange?=?function(){
if?(request.readyState?===?4)?{
if?(request.status?===?200)?{
document.getElementById('searchResult').innerHTML?=?request.responseText;
}?else?{
alert("發(fā)生錯誤:"+?request.status);
}
}
}
}
</script>
</body>
</html>
Ajax問題?
白天給你吃黑片
2017-04-23 18:08:10