Я довольно новичок в php и mysqli и пытаюсь создать какой-то базовый веб-сайт.
В основном я хочу сделать зацикливание в php для создания карточек в одном ряду с одинаковым размером и цветом без созданиякарты вручную в html.
с использованием bootstrap, php и mysqli
база данных, которую я использую, содержит itemname (varchar), itemprice (varchar) и itemimage (mediumblob)
код успешно выполняется, но вывод не соответствует загрузочным картам, и они отказываются находиться в одной строке
Может кто-нибудь мне помочь?спасибо
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<div class="container">
<?php
require 'dbh.inc.php';
$sql = "SELECT * FROM item";
$stmt = mysqli_stmt_init($conn);
if (!mysqli_stmt_prepare($stmt,$sql)) {
echo "error";
} else{
mysqli_stmt_execute($stmt);
$result = $stmt->get_result();
if ($result->num_rows > 0) {
print '<div class="row">';
while ($row = $result->fetch_assoc()) {
print' <div class="col-4">';
print' <div class="card">';
print' <img height="250" width="250" class="card-img-top" src="data:image/jpeg;base64,'.base64_encode( $row['itemimage'] ).'">';
print' <div class="card-body">';
print' <h5 class="card-title">'.$row["itemname"].'</h5>';
print' <p class="card-text">Price : '.$row["itemprice"].'</p>';
print' </div>';
print' </div>';
print' </div>';
}
} else {
print' </div>';
}
}
$conn->close();
?>
<script src="bootstrap/js/jquery-3.3.1.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="bootstrap/js/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="bootstrap/js/bootstrap.min.js" integrity="sha384-7aThvCh9TypR7fIc2HV4O/nFMVCBwyIUKL8XCtKE+8xgCgl/PQGuFsvShjr74PBp" crossorigin="anonymous"></script>
</div>
</body>
</html>
Результат