Php ajax填充数据库并在html表中显示结果的问题

Php ajax填充数据库并在html表中显示结果的问题,php,mysql,ajax,Php,Mysql,Ajax,我的数据库中有一个orders表,它有id、name和status列。然后我有一个html表,表示我的orders表,里面有 我想使用ajax更新status列以使其异步显示html表中的更改的按钮。如何 我已经尝试过在点击一个按钮时运行ajax函数,将订单id作为参数传递,然后使用get方法获取结果,但是 document.getElementsByCassName方法有问题,它没有填充html表中的“我的状态”字段,也没有更改数据库 orders.php $query=mysqli_quer

我的数据库中有一个orders表,它有id、name和status列。然后我有一个html表,表示我的orders表,里面有 我想使用ajax更新status列以使其异步显示html表中的更改的按钮。如何 我已经尝试过在点击一个按钮时运行ajax函数,将订单id作为参数传递,然后使用get方法获取结果,但是 document.getElementsByCassName方法有问题,它没有填充html表中的“我的状态”字段,也没有更改数据库

orders.php

$query=mysqli_query($conn,"SELECT*FROM orders");
echo "<table border='1'>";
echo "<th>Id</th><th>Name</th><th>Status</th><th>Considering</th><th>Accepted</th>";

while($row=mysqli_fetch_array($query)){
$id=$row['id'];
$name=$row['name'];
$status=$row['status'];
echo "<tr>
<td>$id</td><td>$name</td><td><div class='status'>$status</div></td><td><buttton onclick=\"considering('$id')\">Considering</button></td>
<td><buttton onclick=\"accepted('$id')\">Accepted</button></td>
</tr>";
}
$query=mysqli_query($conn,"SELECT*FROM orders");
echo "<table border='1'>";
echo "<th>Id</th><th>Name</th><th>Status</th><th>Considering</th><th>Accepted</th>";

while($row=mysqli_fetch_array($query)){
$id=$row['id'];
$name=$row['name'];
$status=$row['status'];
echo "<tr>
<td>$id</td><td>$name</td><td><div class='status$id'>$status</div></td><td><buttton onclick=\"considering('$id')\">Considering</button></td>
<td><buttton onclick=\"accepted('$id')\">Accepted</button></td>
</tr>";
}
$query=mysqli_query($conn,“从订单中选择*);
回声“;
回显“IdNameStatusConsideringAccepted”;
while($row=mysqli\u fetch\u数组($query)){
$id=$row['id'];
$name=$row['name'];
$status=$row['status'];
回声“
$id$name$status
认可的
";
}
admin.php

<?php
include "include/connect.php";
?>
<!DOCTYPE html>
<html>
<head>
<script>
function considering(one){
var a=new XMLHttpRequest();
a.open("GET","considering_parser.php?one="+one,true);
    a.onreadystatechange=function(){
        if(a.readyState==4 && a.status==200){
        var returndata=a.responseText;
        var x=document.getElementsByClassName("status");
        for(var i=0;i<x.length;i++){
        x[i].innerHTML=returndata;
        }
        }
    }
    a.send(null);
}
function accepted(two){
var b=new XMLHttpRequest();
b.open("GET","accepted_parser.php?two="+two,true);
    b.onreadystatechange=function(){
        if(b.readyState==4 && b.status==200){
        var returndata=b.responseText;
        var x=document.getElementsByClassName("status");
        for(var i=0;i<x.length;i++){
        x[i].innerHTML=returndata;
        }
        }
        }

    b.send(null);
}

</script>
</head>
<body>
<div id="content">
<?php
include "orders.php";
?>
</div>
</body>
</html>
 <html>
<head>
<script>
function considering(one){
var a=new XMLHttpRequest();
a.open("GET","considering_parser.php?one="+one,true);
    a.onreadystatechange=function(){
        if(a.readyState==4 && a.status==200){
        var returndata=a.responseText;
        var x=document.getElementsByClassName("status"+one);
        for(var i=0;i<x.length;i++){
        x[i].innerHTML=returndata;
        }
        }
    }
    a.send(null);
}
function accepted(two){
var b=new XMLHttpRequest();
b.open("GET","accepted_parser.php?two="+two,true);
    b.onreadystatechange=function(){
        if(b.readyState==4 && b.status==200){
        var returndata=b.responseText;
        var x=document.getElementsByClassName("status"+two);
        for(var i=0;i<x.length;i++){
        x[i].innerHTML=returndata;
        }
        }
        }

    b.send(null);
}

</script>
</head>
<body>
<div id="content">
<?php
include "orders.php";
?>
</div>
</body>
</html>

功能考虑(一){
var a=新的XMLHttpRequest();
a、 打开(“GET”,“正在考虑_parser.php?one=“+one,true”);
a、 onreadystatechange=函数(){
如果(a.readyState==4&&a.status==200){
var returndata=a.responseText;
var x=document.getElementsByClassName(“状态”);

对于(var i=0;iOk),由于Fred ii建议使用multi_query()我解决了它

orders.php

$query=mysqli_query($conn,"SELECT*FROM orders");
echo "<table border='1'>";
echo "<th>Id</th><th>Name</th><th>Status</th><th>Considering</th><th>Accepted</th>";

while($row=mysqli_fetch_array($query)){
$id=$row['id'];
$name=$row['name'];
$status=$row['status'];
echo "<tr>
<td>$id</td><td>$name</td><td><div class='status'>$status</div></td><td><buttton onclick=\"considering('$id')\">Considering</button></td>
<td><buttton onclick=\"accepted('$id')\">Accepted</button></td>
</tr>";
}
$query=mysqli_query($conn,"SELECT*FROM orders");
echo "<table border='1'>";
echo "<th>Id</th><th>Name</th><th>Status</th><th>Considering</th><th>Accepted</th>";

while($row=mysqli_fetch_array($query)){
$id=$row['id'];
$name=$row['name'];
$status=$row['status'];
echo "<tr>
<td>$id</td><td>$name</td><td><div class='status$id'>$status</div></td><td><buttton onclick=\"considering('$id')\">Considering</button></td>
<td><buttton onclick=\"accepted('$id')\">Accepted</button></td>
</tr>";
}
$query=mysqli_query($conn,“从订单中选择*);
回声“;
回显“IdNameStatusConsideringAccepted”;
while($row=mysqli\u fetch\u数组($query)){
$id=$row['id'];
$name=$row['name'];
$status=$row['status'];
回声“
$id$name$status
认可的
";
}
admin.php

<?php
include "include/connect.php";
?>
<!DOCTYPE html>
<html>
<head>
<script>
function considering(one){
var a=new XMLHttpRequest();
a.open("GET","considering_parser.php?one="+one,true);
    a.onreadystatechange=function(){
        if(a.readyState==4 && a.status==200){
        var returndata=a.responseText;
        var x=document.getElementsByClassName("status");
        for(var i=0;i<x.length;i++){
        x[i].innerHTML=returndata;
        }
        }
    }
    a.send(null);
}
function accepted(two){
var b=new XMLHttpRequest();
b.open("GET","accepted_parser.php?two="+two,true);
    b.onreadystatechange=function(){
        if(b.readyState==4 && b.status==200){
        var returndata=b.responseText;
        var x=document.getElementsByClassName("status");
        for(var i=0;i<x.length;i++){
        x[i].innerHTML=returndata;
        }
        }
        }

    b.send(null);
}

</script>
</head>
<body>
<div id="content">
<?php
include "orders.php";
?>
</div>
</body>
</html>
 <html>
<head>
<script>
function considering(one){
var a=new XMLHttpRequest();
a.open("GET","considering_parser.php?one="+one,true);
    a.onreadystatechange=function(){
        if(a.readyState==4 && a.status==200){
        var returndata=a.responseText;
        var x=document.getElementsByClassName("status"+one);
        for(var i=0;i<x.length;i++){
        x[i].innerHTML=returndata;
        }
        }
    }
    a.send(null);
}
function accepted(two){
var b=new XMLHttpRequest();
b.open("GET","accepted_parser.php?two="+two,true);
    b.onreadystatechange=function(){
        if(b.readyState==4 && b.status==200){
        var returndata=b.responseText;
        var x=document.getElementsByClassName("status"+two);
        for(var i=0;i<x.length;i++){
        x[i].innerHTML=returndata;
        }
        }
        }

    b.send(null);
}

</script>
</head>
<body>
<div id="content">
<?php
include "orders.php";
?>
</div>
</body>
</html>

功能考虑(一){
var a=新的XMLHttpRequest();
a、 打开(“GET”,“正在考虑_parser.php?one=“+one,true”);
a、 onreadystatechange=函数(){
如果(a.readyState==4&&a.status==200){
var returndata=a.responseText;
var x=document.getElementsByClassName(“状态”+1);
对于(var i=0;i

与accepted_parser.php类似的代码。谢谢Fred ii

您是否在浏览器控制台中查看请求/响应以查看是否有错误?您需要使用
accepted_parser.php
来考虑_parser.php
,因为您正在覆盖第一个…这意味着,只会执行最后的查询。The第一个将被忽略。@Fred ii-请您编写代码好吗?我有点困惑,在我之前从未使用过multy_query(),我在上面给您留下的函数是指向该函数的可单击链接,正在运行