我不确定以前是否曾问过类似的问题,但无论如何都要进行。 (我确实进行了搜索,发现与我的问题无关)。
我正在开发一个使用HTML5视频播放器播放视频的网站。我有一个与我的数据库的连接,一个" watch"使用链接到id的变量(watch.php?v = 1)提取所有正确数据的页面。我想有一个索引页面,其中提取最新的视频。它们按照#34; id"列排序。当我尝试从查询中提取一个结果时,一切正常。我如何获得多个价值观?这是我的PHP代码(隐藏服务器详细信息):
<?php
$mysqli = new mysqli("HIDDEN", "HIDDEN", "HIDDEN", "HIDDEN");
$sql = "
SELECT id, title, imgsrc, description
FROM videos
ORDER BY id DESC
LIMIT 2
";
$result = $mysqli->query($sql);
$video = mysqli_fetch_array($result, MYSQLI_ASSOC);
mysqli_close($mysqli);
?>
这是我的表格的HTML代码。
<table>
<tr>
<td><h2><? echo $video['title']; ?></h2></td>
</tr>
</table>
这不是完整的代码,但是一旦我知道了程序,我就可以在需要的地方应用它!
我是php和mysql的新手,我可以连接到数据库,但是关于它可以完全了解什么是最棒的!
非常感谢,
James Wassall
答案 0 :(得分:0)
试试这个
while($video = $result->fetch_array(MYSQLI_ASSOC))
{
?>
<tr>
<td><h2><?php echo $video['title']; ?></h2></td>
</tr>
<?php
}
?>
答案 1 :(得分:0)
每次调用mysqli_fetch_array时,只会获取一行。
您需要执行类似
的操作while ($video = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
// output $video['title']
}
(根据:http://www.php.net/manual/en/mysqli-result.fetch-array.php)
答案 2 :(得分:0)
您可以通过调用mysqli_fetch_array($result, MYSQLI_ASSOC)
来迭代for或while循环:
<table>
<?php
$mysqli = new mysqli("HIDDEN", "HIDDEN", "HIDDEN", "HIDDEN");
$sql = "
SELECT id, title, imgsrc, description
FROM videos
ORDER BY id DESC
LIMIT 2
";
$result = $mysqli->query($sql);
while($video = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
?>
<tr>
<td><h2><? echo $video['title']; ?></h2></td>
</tr>
<?php
}
mysqli_close($mysqli);
?>
</table>
请注意,您应该考虑检查错误语句,空控件等。
答案 3 :(得分:0)
试试这个,
<table>
<?php while($row = $result->fetch_array(MYSQLI_ASSOC)){ ?>
<tr>
<td><h2><? echo $row['title']; ?></h2></td>
<td><h2><? echo $row['description']; ?></h2></td>
</tr>
<?php } ?>
</table>