Tworzę skrypt w PHP, ma za zadanie wyświetlić wszystkie artykuły z bazy danych na stronie bloga. Mam już gotową klasę Article i obiekt z pierwszym artykułem oraz kilka innych w bazie. Nie wiem, jak zrobić automatyczne pobieranie wszystkich artykułów z bazy do utworzonej klasy.
Oto cały kod php
<?php
require_once "connect.php";
$connection = new mysqli($host, $db_user, $db_password, $db_name);
if ($connection->connect_errno!=0)
{
echo "error".$connection->connect_errno;
}
else
{
$sql = "SELECT * FROM `artykuły`";
if ($result = @$connection->query($sql))
{
class Article
{
public $id;
public $picture;
public $title;
public $teaser;
public $content;
}
$row = $result->fetch_assoc();
$a = new Article();
$a->id = $row['id'];
$a->picture = $row['picture'];
$a->title = $row['title'];
$a->teaser = $row['teaser'];
$a->content = $row['content'];
}
$connection->close();
}
?>
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Stay Fluent - Start</title>
<link rel="stylesheet" href="css/style.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous">
</head>
<body class="min-vh-100 bg-secondary">
<header>
<nav class="navbar navbar-expand-md navbar-dark bg-success">
<a class="navbar-brand mx-2" href="index.html">LOGO.PNG</a>
<button class="navbar-toggler bg-secondary" type="button" data-bs-toggle="collapse" data-bs-target="#nav" aria-controls="nav" aria-expanded="false" aria-label="Przełącznik Nawigacji">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse p-1" id="nav">
<ul class="navbar-nav me-auto">
<li class="nav-item"><a href="index.html" class="nav-link">Start</a></li>
<!--<li class="nav-item"><a href="#" class="nav-link disabled">Metody nauki</a></li>-->
<li class="nav-item"><a href="#" class="nav-link active" active-current="page">Blog</a></li>
<li class="nav-item"><a href="#" class="nav-link disabled">Motywacja</a></li>
</ul>
<form class="inline-form me-2">
<input class="form-control-sm bg-light border-0" type="search" placeholder="Szukaj" aria-label="Wyszukiwarka">
<button class="btn" type="submit"><i class="fa fa-search text-light"></i></button>
</form>
</div>
</nav>
</header>
<main>
<?php
echo <<<END
<div class="card" style="width: 18rem;">
<img src="$a->picture" class="card-img-top" alt="...">
<div class="card-body">
<h5 class="card-title">$a->title</h5>
<p class="card-text">$a->teaser.</p>
<a href="#" class="btn btn-primary">Pokaż więcej</a>
</div>
</div>
END;
?>
</main>
</body>
</html>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script src="js/script.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script>