gpt4 book ai didi

php - MySQL 查询在 PHP 的 HTML 表中没有显示结果

转载 作者:行者123 更新时间:2023-11-29 08:15:17 24 4
gpt4 key购买 nike

我正在尝试为我的一个小客户构建一个简单的库存数据库(我通常不做 WebDev 的事情),但我有点困惑。我有我认为应该有效的方法,但我的表中没有得到任何结果。我知道查询很好,因为直接查询数据库时我得到了预期的结果,除非 PHP 期望 SQL 语句的格式不同。这是我的页面:

<html>
<head>
<title>Inventory</title>
</head>
<body>
<?php
$con=mysqli_connect("localhost","user","pass","db_name");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}


$query = "SELECT
products.name,
products.sku,
inventory.quantityfry,
inventory.quantityjuv,
inventory.quantityadult,
inventory.notes,
inventory.location,
inventory.owner
FROM
products
INNER JOIN
inventory
ON
products.sku=inventory.sku";

$result = mysqli_query($query);
echo "<table border='1'>
<tr>
<th>Species</th>
<th>SKU</th>
<th>Fry Count</th>
<th>Juvie Count</th>
<th>Adult Count</th>
<th>Notes</th>
<th>Location</th>
<th>Owner</th>

</tr>";

while ($row = mysqli_fetch_assoc($result)) {
echo "<tr>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['sku'] . "</td>";
echo "<td>" . $row['quantityfry'] . "</td>";
echo "<td>" . $row['quantityjuv'] . "</td>";
echo "<td>" . $row['quantityadult'] . "</td>";
echo "<td>" . $row['notes'] . "</td>";
echo "<td>" . $row['location'] . "</td>";
echo "<td>" . $row['owner'] . "</td>";
echo "</tr>";
}

mysqli_free_result($result);

echo "</table>";

mysqli_close($con);
?>
</body>
</html>

当我加载页面时,我看到的只是 HTML 表格标题,但没有数据。也没有错误消息。我错过了什么?

最佳答案

您看不到错误消息,因为您不费心去检查它们。您错误地调用了 mysqli_query,并且由于您不检查错误,因此永远不会看到它们:

$result = mysqli_query($con, $query) or die(mysqli_error($con));
^^^^---required

由于您使用不正确,查询调用返回 false。然后,您盲目地尝试从该 bool 值 FALSE 中获取结果行,这将导致进一步的错误,并且您的 while() 循环根本不会执行。

关于php - MySQL 查询在 PHP 的 HTML 表中没有显示结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20747062/

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