我正在为学校创建一个网站,因此他们可以更轻松地完成从学生那里收到的订单。我想展示学生已经订购的某种收据。但是桌子一直在循环播放,我自己也找不到答案。
我已经向我认识的程序员寻求帮助。
$sqlb = "SELECT tblOrderdetails.aantal, tblProducten.Productnaam, tblProducten.Prijs FROM tblOrders INNER JOIN tblOrderdetails ON tblOrders_OrderID = tblOrderdetails.tblOrders_OrderID INNER JOIN tblProducten ON tblProducten.ProductID = tblProducten.ProductID INNER JOIN tblLeerlingen ON tblLeerlingen_LeerlingID = tblOrders.tblLeerlingen_LeerlingID WHERE tblOrders.tblLeerlingen_LeerlingID = ".$id_session;
$result = mysqli_query($db,$sqlb);
?>
<html>
<link rel="stylesheet" href="table.css" />
<table align = "center">
<tr><th>Product</th><th>Aantal</th><th>Prijs</th></tr>
<form action="" method="post">
<?php
$totaal = 0;
while($row = mysqli_fetch_array($result)) {
$Aantal = ($row['aantal']);
$totaalrij = ($row['Prijs'])*$Aantal;
echo "<tr><td>".$row['Productnaam']."</td>
<td>".$Aantal."</td>
<td>".$totaalrij."</td>
</tr>";
$totaal = $totaal + $totaalrij;
}
$Totaalprijs = $totaal;
?>
我只希望表不进行无限循环,对我来说只需一次就够了。
答案 0 :(得分:0)
while($ row = mysqli_fetch_array($ result))是您的问题。尝试
while($row = mysql_fetch_assoc($result))
{
$posts[] = $row;
}
然后
foreach ($posts as $row)
{
foreach ($row as $element)
{
echo $element."<br>";
}
}
等...
高度高度强烈建议您不要像您一样回应您的结果,XSS和其他黑客攻击的时机已经成熟。使用mysqli_real_escape_string和htmlspecialchars保护自己。