gpt4 book ai didi

php - 在单个表中显示 MySQL 结果

转载 作者:可可西里 更新时间:2023-11-01 06:52:21 24 4
gpt4 key购买 nike

我创建了一个界面,用户可以在其中选择要显示的结果。用户选择的选项保存在一个数组中,因此 MySQL 查询会遍历这个数组的不同元素。

所以我想在一个表中显示结果...像这样:

标题 1 | 标题 2

结果 1-1 |结果1-2

结果2-1 |结果2-2

我的代码如下:

$mark = $_POST['mark'];
if (isset($_POST['mark']) && is_array($_POST['mark'])) {
echo "<table border='1'>";
echo "<tr>";
for ($i = 0; $i < count($mark); $i++) {
echo "<th>" . $mark[$i] . "</th>";
}
echo "</tr>";

for ($i = 0; $i < count($mark); $i++) {
$markQuery = "SELECT $mark[$i] FROM marks LIMIT 10";
$result = mysqli_query($DB_connection, $markQuery);
echo "<tr>";
while($row= mysqli_fetch_assoc($result)){
echo "<td>" . $row[$mark[$i]] . "</td>";
}
echo "</tr>";
}
echo "</table>";
}

我不确定第二个循环是否是个好主意,但我不知道我应该怎么做才能显示我想要的结果。

最佳答案

尝试先取出所有列,然后将其添加到 sql 查询中,无需循环数据库查询。

$mark = $_POST['mark'];
if (isset($_POST['mark']) && is_array($_POST['mark'])) {
echo "<table border='1'>";
echo "<tr>";
for ($i = 0; $i < count($mark); $i++) {
echo "<th>" . $mark[$i] . "</th>";
}
echo "</tr>";

$sql = implode(',', $_POST['marks']);

$markQuery = "SELECT ".$sql." FROM marks LIMIT 10";
$result = mysqli_query($DB_connection, $markQuery);
echo "<tr>";
while($row= mysqli_fetch_assoc($result)){
echo "<td>" . $row[$mark[$i]] . "</td>";
}
echo "</tr>";
echo "</table>";
}

关于php - 在单个表中显示 MySQL 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31000985/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com