这可能是很简单,但我不能用这个代码找出问题:While循环不打印所有的答案
$sql = mysql_query("select * from Temporary_Stock_Transfer where Emp_ID = '$emp_id' and Company_ID = '$company_id'");
if(mysql_num_rows($sql) == 0) {
echo "<tr><td colspan='3'><i>You currenty have no items</i></td></tr>";
}else {
while($row = mysql_fetch_array($sql)) {
echo mysql_num_rows($sql);
echo 'reached';
$book_id = $row[1];
$sql = mysql_fetch_row(mysql_query("select title from Book where Book_ID = '$book_id'"));
echo "<tr><td>".$sql[0]."</td><td>".$row[2]."</td><td><span class='label label-important'>Remove</span></td></tr>";
}
}
现在根据我的数据库中的查询返回2倍的效果,echo mysql_num_rows($sql)
还散发出2
。然而,达成的回应只有一次。有没有人看到代码的潜在问题?
P.S:我的坏,正在重演$sql
,这是一个愚蠢的错误
我的猜测是你的循环内查询失败。你应该检查你的查询是否正确,通过检查mysql_error() – Cfreak 2012-03-19 14:17:44