我的剧本有问题。
我有这个:
<?php
$r=mysql_query("SELECT * FROM memberships WHERE id!='".$userdata['membership']."'");
while($md = mysql_fetch_assoc($r)):
echo '<td class="header">'.$md['name'].'</td>';
endwhile;
?>
有效。但如果在页面的下方,我会添加:
<?php
while($md = mysql_fetch_assoc($r)):
echo '<td class="result">'.$md['number_of_ads'].'</td>';
endwhile;
?>
它不会输出任何内容。为什么呢?
答案 0 :(得分:8)
也许是因为没有更多的元素可以获取。不确定你要完成什么,但是如果你想从头开始获取数据,你需要在第二个代码块之前添加它:
mysql_data_seek($r, 0);
这会将内部指针重置为开头。
答案 1 :(得分:1)
从$r
获取所有行后,对它的连续调用将不会返回任何行。
因此,当第一个while循环结束时,在第二个循环中无法从查询结果中获取
答案 2 :(得分:1)
fetch_association函数从结果集中绘制行。第一个while循环遍历结果集。如果要将数据循环两次,则需要重置数据。