Как поместить результаты MySQL в элементы Bootstrap

Я хочу получить результаты базы данных MySQL и поместить их в «страницы» на моих веб-страницах.

У меня есть веб-страница начальной загрузки, и я использую элементы для отображения сообщений, но я хочу показать, скажем, по 5 записей на элемент, и вместо того, чтобы создавать страницы, я хочу отсортировать их по элементам для отображения записей.

Это возможно и как это возможно?

То, что у меня есть сейчас и работает, это следующий код:

<div class="item">
div class="testimony-slide active text-center">

<?php

$sql = "SELECT name,email,message FROM guestbook ORDER BY ID DESC LIMIT 5 OFFSET 0";
$result = mysqli_query($conn, $sql) or die ("Could not access DB: " . mysql_error());

while ($row = mysqli_fetch_assoc($result)) {

echo "<figure>";
echo "<img src=\"../images/guestbook.png\">";
echo "</figure>";
echo !empty($row['name']) ? ("<span>". $row['name'] . "</span>") : '';
echo !empty($row['email']) ? ("<span>". $row['email'] . "</span>") : '';
echo "<blockquote>";
echo !empty($row['message']) ? ("<p>". $row['message'] . "</p>") : '';
echo "</blockquote>";
}

mysqli_close($con);
?>
</div>
</div>

<div class="item">
div class="testimony-slide active text-center">

<?php

$sql = "SELECT name,email,message FROM guestbook ORDER BY ID DESC LIMIT 5 OFFSET 5";
$result = mysqli_query($conn, $sql) or die ("Could not access DB: " . mysql_error());

while ($row = mysqli_fetch_assoc($result)) {

echo "<figure>";
echo "<img src=\"../images/guestbook.png\">";
echo "</figure>";
echo !empty($row['name']) ? ("<span>". $row['name'] . "</span>") : '';
echo !empty($row['email']) ? ("<span>". $row['email'] . "</span>") : '';
echo "<blockquote>";
echo !empty($row['message']) ? ("<p>". $row['message'] . "</p>") : '';
echo "</blockquote>";
}

mysqli_close($con);
?>
</div>
</div>

Проблема с этим кодом состоит в том, что он заставляет меня делать это вручную, так что это причиняет ему боль в заднице … Я хочу, чтобы он был разбит на элементы в соответствии с записями, найденными в базе данных.

Я попробовал решения, которые нашел в Google, но все они созданы для отдельных страниц, а результаты не делятся на элементы div.

0

Решение

Используйте переменную счетчика, чтобы отслеживать, сколько строк напечатано, и разделить строки на разные ДИВс соответственно. Итак, ваш код должен быть таким:

<div class="item">
<div class="testimony-slide active text-center">
<?php
$sql = "SELECT name,email,message FROM guestbook ORDER BY ID DESC";
$result = mysqli_query($conn, $sql) or die ("Could not access DB: " . mysqli_error($conn));
$counter = 1;
while ($row = mysqli_fetch_assoc($result)) {
echo "<figure>";
echo "<img src=\"../images/guestbook.png\">";
echo "</figure>";
echo !empty($row['name']) ? ("<span>". $row['name'] . "</span>") : '';
echo !empty($row['email']) ? ("<span>". $row['email'] . "</span>") : '';
echo "<blockquote>";
echo !empty($row['message']) ? ("<p>". $row['message'] . "</p>") : '';
echo "</blockquote>";

if($counter % 5 == 0){
echo '</div></div>';
echo '<div class="item"><div class="testimony-slide active text-center">';
}
++$counter;
}
mysqli_close($con);
?>
</div>
</div>

Примечание: Не смешивай mysql а также mysqli API, это две разные вещи. mysql_error() должно быть mysqli_error($conn),

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]