有人看到这个错误吗?我没有得到打印结果,这是从第二个循环预期的。如何打印第二个循环标题没有问题。
我正在尝试从SQL数据库打印数据。
<?php
$con= new mysqli('localhost','root','','regional_data');
if (mysqli_connect_errno()) {exit('Connection failed: '. mysqli_connect_error());}
$result = mysqli_query($con,"SELECT * FROM newchk WHERE dist_chk='$distUsr'");
echo "<table cellpadding='2' class='tablet' cellspacing='0'>";
echo
"<tr>
<th></th>"
."<th>"."Starting Cheque No"."</th>"
."<th>"."Ending Cheque No"."</th>"
."<th>"."Total No of Cheques remaining"."</th>"
."<th>"."Cheque Type"."</th>"
."</tr>";
while ($reca = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td><input type='checkbox' ></td>";
echo "<td>".trim($reca["sbstart"])."</td>";
echo "<td>".trim($reca["sbend"])."</td>";
echo "<td>".trim($reca["totsb"])."</td>";
echo "<td>SB</td>";
echo "</tr>";
}
echo "</table>";
echo "<table cellpadding='2' class='tablet' cellspacing='0'>";
echo
"<tr>
<th></th>"
."<th>"."Starting Cheque No"."</th>"
."<th>"."Ending Cheque No"."</th>"
."<th>"."Total No of Cheques remaining"."</th>"
."<th>"."Cheque Type"."</th>"
."</tr>";
while ($reca = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td><input type='checkbox' ></td>";
echo "<td>".trim($reca["gwstart"])."</td>";
echo "<td>".trim($reca["gwend"])."</td>";
echo "<td>".trim($reca["totgw"])."</td>";
echo "<td>GW</td>";
echo "</tr>";
}
echo "</table>";
$con->close();
?>
</div>
答案 0 :(得分:2)
while ($reca = mysqli_fetch_array($result))
从结果集中获取所有结果。之后结果集耗尽,这就是循环结束的原因。之后没有更多结果可以从同一结果集中获取。
发出新查询,或将数据保存到数组中,您可以根据需要多次循环。
答案 1 :(得分:0)
我认为你不能两次使用相同的$ result变量。
我将做的是以下内容:
$result = mysqli_query($con,"SELECT * FROM newchk WHERE dist_chk='$distUsr'");
$result2 = mysqli_query($con,"SELECT * FROM newchk WHERE dist_chk='$distUsr'");
然后,您的第一个while循环可以使用mysqli_fetch_array($result)
,第二个循环可以使用mysqli_fetch_array($result2)
。
希望这有帮助!