我正在构建此网站,人们可以在其中添加活动到日历。我创建了一个将数据放入我的数据库的表单,但现在我想知道如何从数据库中获取数据的魔力!由于我刚开始将这个项目作为学校作业,我在混合PHP和HTML方面有点困难。我希望我做对了;
<?php
include("template.php");
$servername = "servername";
$username = "username";
$password = "password";
$dbname = "dbname";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
<body>
<div class="outer">
<h2> Beheerderspagina </h2>
<hr>
<?php
$sql = "SELECT name, organisator, begin, end, location, province, price, sort, website, description FROM events";
$result = $conn->query($sql);
if ($result->num_rows > 0);
while($row = $result->fetch_assoc());
echo <<<HTML
<div class="add">
<div class="block">
<div class="photo">
<img src="geen_foto_beschikbaar.jpg" width="250px" height="250px">
</div>
<div class="text">
<div class="links">
<p>
Naam:<br>Organisator:<br>Datum:<br>Locatie:<br>Provincie/land:<br>Gemiddelde prijs:<br>Genre:<br>Website:<br>Omschrijving </p>
</div>
<div class="rechts">
HTML;
echo "<br>".$row["name"]."<br>".$row["organisator"]. "<br>". $row["begin"]. " tot ". $row["end"]. "<br>". $row["location"]. "<br>". $row["province"]. "<br>". $row["price"]. "<br>". $row["sort"]. "<br>". $row["website"]. "<br>". $row["description"]. "<br>";
echo <<<HTML
</div>
</div>
</div>
</div>
HTML;
?>
所以这是代码,但它不起作用。问题是,它没有显示我的数据。显示“tot”这个词,但其余的只是空的。如何循环数据并在div中每行显示它?
答案 0 :(得分:3)
while($row = $result->fetch_assoc());
此处不需要;
,而是使用{}
包装代码。像这样:
while($row = $result->fetch_assoc()){
echo <<<HTML
<div class="add">
<div class="block">
<div class="photo">
<img src="geen_foto_beschikbaar.jpg" width="250px" height="250px">
</div>
<div class="text">
<div class="links">
<p>
Naam:<br>Organisator:<br>Datum:<br>Locatie:<br>Provincie/land:<br>Gemiddelde prijs:<br>Genre:<br>Website:<br>Omschrijving </p>
</div>
<div class="rechts">
HTML;
echo "<br>".$row["name"]."<br>".$row["organisator"]. "<br>". $row["begin"]. " tot ". $row["end"]. "<br>". $row["location"]. "<br>". $row["province"]. "<br>". $row["price"]. "<br>". $row["sort"]. "<br>". $row["website"]. "<br>". $row["description"]. "<br>";
echo <<<HTML
</div>
</div>
</div>
</div>
HTML;}
与if
声明相同。
答案 1 :(得分:1)
将您的循环更新为以下
<?php
$sql = "SELECT name, organisator, begin, end, location, province, price, sort, website, description FROM events";
$result = $conn->query($sql);
if ($result->num_rows > 0){
while($row = $result->fetch_assoc()){
?>
<div class="add">
<div class="block">
<div class="photo">
<img src="geen_foto_beschikbaar.jpg" width="250px" height="250px">
</div>
<div class="text">
<div class="links">
<p>
Naam:<br>Organisator:<br>Datum:<br>Locatie:<br>Provincie/land:<br>Gemiddelde prijs:<br>Genre:<br>Website:<br>Omschrijving </p>
</div>
<div class="rechts">
<br><?=$row["name"]?>
<br><?=$row["organisator"]?>
<br><?=$row["begin"]?> tot <?=$row["end"]?>
<br><?=$row["location"]?>
<br><?=$row["province"]?>
<br><?=$row["price"]?>
<br><?=$row["sort"]?>
<br><?=$row["website"]?>
<br><?=$row["description"]?><br>
</div>
</div>
</div>
</div>
<?php
}
}
?>