Javascript AJAX未将变量传递给PHP进行MySQL查询
我试图让下面的AJAX脚本向PHP传递一个下拉ID来运行查询,但是看起来变量实际上并没有被传递。当我对PHP文件进行硬编码时,查询将正确运行,但当我尝试动态执行时,查询将返回“未定义”或什么都没有 AJAX代码Javascript AJAX未将变量传递给PHP进行MySQL查询,javascript,php,mysql,ajax,Javascript,Php,Mysql,Ajax,我试图让下面的AJAX脚本向PHP传递一个下拉ID来运行查询,但是看起来变量实际上并没有被传递。当我对PHP文件进行硬编码时,查询将正确运行,但当我尝试动态执行时,查询将返回“未定义”或什么都没有 AJAX代码 function ajax_post(){ var request = new XMLHttpRequest(); var id = document.getElementById("editorginfo").value; alert (id); request.open(
function ajax_post(){
var request = new XMLHttpRequest();
var id = document.getElementById("editorginfo").value;
alert (id);
request.open("POST", "parse.php", true);
request.setRequestHeader("Content-Type", "x-www-form-urlencoded");
request.onreadystatechange = function () {
if(request.readyState == 4 && request.status == 200) {
var return_data = request.responseText;
alert (return_data);
document.getElementById("orgeditname").value = return_data;
document.getElementById("orgeditphone").value = return_data;
}
}
request.send("id="+id);
}
PHP解析代码
<?php
include_once('../php_includes/db_connect.php');
$searchid = $_POST['id'];
//$searchid = 1;
$sql = 'SELECT * FROM orginfo WHERE id = $searchid';
$user_query = mysqli_query($db_connect, $sql) or die("Error: ".mysqli_error($db_connect));
while ($row = mysqli_fetch_array($user_query, MYSQLI_ASSOC)) {
$orgid = $row["id"];
$orgname = $row["orgname"];
$orgphone = $row["orgphone"];
echo $orgname, $orgphone;
}
?>
不太确定信息在哪里丢失。当我提醒id它正在捕获正确的信息时,我假设问题出在我的发送部分,但我无法找出我做错了什么。任何帮助都将不胜感激
提前感谢。您的请求标题错误。更改此行-
request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
^^^^^^^^^^^^