-1

誰でもこれでエラーが表示されますか? 2 番目のループで期待される結果が出力されません。2 番目のループ ヘッダーが問題なく出力される方法。

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>
4

2 に答える 2

2
while ($reca = mysqli_fetch_array($result))

これにより、結果セットからすべての結果がフェッチされます。その後、結果セットが使い果たされるため、ループが終了します。その後、同じ結果セットから取得する結果はありません。

新しいクエリを発行するか、必要な回数だけループできる配列にデータを保存します。

于 2012-10-22T15:02:49.380 に答える
0

同じ $result 変数を 2 回使用できるとは思いません。

私がすることは次のとおりです。

$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)、2番目のループで使用できますmysqli_fetch_array($result2)

お役に立てれば!

于 2012-10-22T15:05:43.033 に答える