Я пытаюсь создать список панелей, который показывает определенные строки из моей базы данных, однако, когда я пытаюсь вызвать его, он показывает только 1 данные в строке, хотя я ограничиваю его 5.
Вот мой сценарий:
<?php
$link = mysqli_connect("localhost", "root", "", "test");
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
$sql = "SELECT * FROM updates order by id desc limit 5";
if($result = mysqli_query($link, $sql)){
if($list=mysqli_fetch_array($result)){
echo "<div class=\"container\">";
echo "<table>";
echo "<tr>";
echo "</tr>";
echo "<div class=\"col-md-4\">";
echo "<div class=\"panel panel-primary\">";
echo "<div class=\"panel-heading\">Updates";
echo "</div>";
echo "<ul class=\"list-group\">";
echo "<li class=\"list-group-item\">";
echo "<b><h4>{$list["updates"]}</b></h4>";
echo "</li>";
echo "</div>";
echo "</div>";
echo "</div>";
echo "</div>";
}
echo "</table>";
mysqli_free_result($result);
} else{
echo "No records matching your query were found.";
}
{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
mysqli_close($link);
?>
Это потому, что вы получаете только один раз, здесь:
if ($list=mysqli_fetch_array($result) )
Вместо этого оберните это внутри цикла следующим образом:
$row_count = mysqli_num_rows($result);
if ($row_count <= 0) {
echo "No records matching your query were found.";
}
else {
// you have results
// panel starts here
while ($list = mysqli_fetch_array($result)) {
// do some magic with your results
}
// panel ends here
mysqli_free_result($result);
}
Я думаю, у вас есть идея, теперь вы можете сделать все остальное. Если нет, дайте нам знать снова. Удачного кодирования!
Вы используете sql, чтобы получить пять данных, но вы используете функцию mysqli_fetch_array (), которая вынимает только строку.
строка ошибки 8;