-2

我想知道为什么 while 循环不会覆盖$kid值?

$lastrow = //another mysql query to get the id of last row.

    $kid = 0;

    $result = mysql_query("SELECT kid.......

    while(list($kid) = mysql_fetch_row($result)) {
    ...
    }

    echo $kid;

if ($lastrow != $kid) echo "<a href="/show-more.php">show more results</a>";

出于某种原因,在 while 循环 $kid 为 "" 之后 - 为空,并且循环不会覆盖此值。

4

2 回答 2

3
$kid = 0;

$result = mysql_query("SELECT kid.......

while(list($temp_kid) = mysql_fetch_row($result)) {
  $kid = $temp_kid;
}

echo $kid;

试试这个...

于 2013-03-17T12:43:40.620 回答
0

当条件首先为假 (0) 时,while 循环结束。这意味着,$kid在循环之后,它将始终具有一个评估为 false 的值。

遵循以下原则的东西应该可以工作:

while($row = mysqli_fetch_row($result)) {
  $kid = $row['kid'];
}

虽然我不确定您是否采取了正确的方法来解决您的问题。你想达到什么目的?我认为只从数据库中选择一行会更有意义。

于 2013-03-17T12:51:04.430 回答