如何解决这个无限循环?

时间:2019-05-21 21:00:46

标签: php loops

我正在为学校创建一个网站,因此他们可以更轻松地完成从学生那里收到的订单。我想展示学生已经订购的某种收据。但是桌子一直在循环播放,我自己也找不到答案。

我已经向我认识的程序员寻求帮助。

$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;
    ?>

我只希望表不进行无限循环,对我来说只需一次就够了。

1 个答案:

答案 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保护自己。