php里面嵌套while循环的问题 5

<?php$query=$mysql->findall("ifenwheref_id=0");while($row=$mysql->fetch_array($query)... <?php
$query=$mysql->findall("ifen where f_id=0");
while($row=$mysql->fetch_array($query)){
?>
<div id="zwfl">
<h2><a href="/zp<?php echo $row[mulu]?>/"><?php echo $row[ming]?></a></h2>
<?php
$f_id=$class_arr_id[$row[mulu]];
echo $f_id;
$query_xiaol=$mysql->findall("ifen where f_id=$f_id");
while($row_xiaol=$mysql->fetch_array($query_xiaol)){
?>
<a href="/zp<?php echo $row_xiaol[mulu]?>/"><?php echo $row_xiaol[ming]?></a>
<?php
}
?>
</div>
<?php
}
?>
这样写不知道为什么,不能执行外面的循环,里面的循环正常,但是外面的循环只执行一次,这是为什么?是我哪里写错了吗?该怎么改?
展开
 我来答
词弯0
推荐于2017-12-16 · TA获得超过842个赞
知道小有建树答主
回答量:1223
采纳率:80%
帮助的人:295万
展开全部
没记错的话fetch_array 是获取整个查询结果的数组。
你可以写两个
$row=$mysql->fetch_array($query)
打印第二个fetch_array的结果就知道了 如果是空或者空数组
那么while () 会转换为false 会跳出循环
你应该这么写
$res=$mysql->fetch_array($query)
foreach ($res as $row)
{

//你之前while的代码
}
陈思王玉
2013-08-22 · 超过22用户采纳过TA的回答
知道答主
回答量:51
采纳率:0%
帮助的人:55.3万
展开全部
把div层的结束标签放在外层循环结束符“}”的外面;即:
...省略的代码...
<a href="/zp<?php echo $row_xiaol[mulu]?>/"><?php echo $row_xiaol[ming]?></a>
<?php
}
?>
//</div>把这个div结束标签放在下面位置
<?php
}
?>
</div>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友690c81e14
2013-08-23 · TA获得超过635个赞
知道小有建树答主
回答量:680
采纳率:0%
帮助的人:667万
展开全部
逻辑没有错误,可以打印出$query查看一下读取到的数据是否有问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2d86735
2013-08-23 · 超过13用户采纳过TA的回答
知道答主
回答量:59
采纳率:0%
帮助的人:35万
展开全部
请检查你外循环的结果集
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式