我正在从mysql数据库表中获取数据。该表具有ID和"POST"列。我已经通过id从底部订购了帖子,所以我总是把最新的帖子放在第一位。但是,当我想回声特定的帖子时(例如,id为5),我不能用$col = mysqli_fetch_array($result); echo $col;
回音。我尝试过foreach循环,但它echo的所有帖子。所以我想,如果我能用foreach循环将它们放入数组,它就能完成任务。
$sql = "SELECT * FROM `post` ORDER BY `id` DESC";
$result = mysqli_query($con, $sql);
$col = mysqli_fetch_array($result);
foreach($col as $cols) {
}
我尝试了很多事情,花了很多时间在研究上,但仍然不知道如何做到
谢谢你的想法和帮助。
$sql = "SELECT * FROM `post` ORDER BY `id` DESC";
$result = mysqli_query($con, $sql);
$col = mysqli_fetch_array($result);
foreach($col as $cols) {
if($col['id'] == 5) {
print_r($col);
}
}
mysqli_fetch_array将结果行作为关联数组、数字数组或两者兼而有之。您需要指定要打印出的列的名称。因为结果集中可能有多行,所以应该使用循环(while
),如下所示:
while ($row = mysqli_fetch_array($result)) {
echo $row['POST']; // 'POST' here is the name of the column you want to print out
}
希望这能有所帮助!
更新:
如果你想得到一个特定的帖子,你必须把你的SQL改成这样:
$sql = "SELECT * FROM `post` WHERE `id` = $wanted_post_id";