【发布时间】:2023-03-15 14:55:02
【问题描述】:
我有一个非常简单的搜索页面,用于查询数据库中的一个表。我有查询和获取工作。但是,如果它没有找到与用户输入的术语匹配的任何内容,那么我需要它说“No Rows Returned”。
这是我的 PHP 代码:
<?php
include('./includes/dbConnection.php');
$result = null;
if (isset($_GET['submit'])) {
// connect to database
$conn = dbConnect('localhost', 'db_admin', 'kfor.com', 'receiving');
// query the database
$stmt = $conn->stmt_init();
$searchTerm = "SELECT * FROM inventory WHERE pallet = {$_GET['pallet_id']}";
$result = $conn->query($searchTerm);
}
?>
这是显示结果和错误的 PHP:
<?php
if ($result != null) {
if (!empty($result)) {
while ($row = $result->fetch_assoc()) {
?>
<tr>
<td><?php echo $row['pallet']; ?></td>
<td><?php echo $row['serial']; ?></td>
</tr>
<?php
}
}
} else {
echo "No Results";
}
?>
有没有更好的方法来显示“未返回结果”?现在它只是在刷新时显示该错误,因为 $result 确实等于 null。
感谢您的帮助!
【问题讨论】:
-
你容易受到sql injection attacks的攻击
-
您应该使用 prepared statement 或 bind 参数,而不是直接将 GET 中的值包含到您的查询中