foreach循环中的数组

时间:2016-05-14 16:11:23

标签: php html mysql

我从mysql数据库表中获取数据。该表格包含 ID " POST" 列。我已经通过 id 从底部订购帖子,所以我总是在第一个地方发布最新帖子。但是当我想回显特定帖子(例如,ID为5)时,我无法用$col = mysqli_fetch_array($result); echo $col; 回应。我已尝试使用 foreach循环,但回显所有帖子。所以我想如果我可以将它们放入数组并使用 foreach循环它就能完成这项工作。

$sql = "SELECT * FROM `post` ORDER BY `id` DESC";
$result = mysqli_query($con, $sql);
$col = mysqli_fetch_array($result);

foreach($col as $cols) {

}

我尝试了很多事情,花了很多时间研究,但仍然不知道该怎么做。

感谢您的想法和帮助。

3 个答案:

答案 0 :(得分:0)

$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);
    }
}

答案 1 :(得分:0)

更新:

如果您想获得特定帖子,则必须将SQL更改为以下内容:

$sql = "SELECT * FROM `post` WHERE `id` = $wanted_post_id";

答案 2 :(得分:0)

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 }

希望这有帮助!