当前位置: 代码迷 >> PHP >> 获取数据后怎么排成这种形式
  详细解决方案

获取数据后怎么排成这种形式

热度:203   发布时间:2016-04-28 20:17:10.0
获取数据后如何排成这种形式!



但是这个肯定错了,但是不知道怎么去写啊,逻辑好乱,有大神帮忙吗?分不多,就一个意思!
我写错的:


<?php foreach($catelist as $k=>$v){?> //循环大分类
<div class="catemenu">
<div class="cname"><?php echo $v['cate_name'];?></div>
<ul>
<?php
foreach($catlist as $kk=>$vv){ //循环小分类
if ($vv['parentid']==$v['cate_id']){ //判断小分类的父分类
?>
<li>
<a href="<?php echo $vv['url'];?>"><?php echo $vv['cate_name'];?></a>
<div class="clr"></div>
</li>
<?php } } ?>
</ul>
</div>
<?php }?>



下面是图片的HTML:

<div class="catemenu">
<a href=""><div class="cname"><img src="1.png" />酒店宾馆</div></a>
<ul>  
<li>
<a href="">新安东阁</a>
<a href="">七经街店</a>
<a href="">锦山大街店</a>
<a href="">江城大街店</a>
<div class="clr"></div>
</li>


<li>
<a href="1">皇冠假日</a>
<a href="">汉庭步行街</a>
<a href="">月光百合</a>
<a href="">万家酒店</a>
<div class="clr"></div>
</li>
         
<li>
<a href="">凯日达宾馆</a>
<a href="">艺海宾馆</a>
<a href="">荣汇酒店</a>
<a href="">龙苑温泉</a>
<div class="clr"></div>
</li>
         
<li>
<a href="">汉庭站前店</a>
<a href="">7天连锁</a>
<a href="">子木屋日租</a>
<a href="">假日阳光</a>
<div class="clr"></div>
</li>
         
<li>
<a href="">中联酒店</a>
<a href="">高尔夫会所</a>
<a href="">尚客优快捷</a>
<a href="">莱弗仕酒店</a>
<div class="clr"></div>
</li>
         
<li>
<a href="">长城宾馆</a>
<a href="">丽兹卡尔森</a>
<a href="">虎跃酒店</a>
<a href="">阿里郎宾馆</a>
<div class="clr"></div>
</li>

<li>
<a href="">皇家凯旋</a>
<a href="">董姐旅馆</a>
</ul>
</div>



<div class="catemenu">
<a href=""><div class="cname"><img src="2.png" />便民工具</div></a>
<ul>

<li>
<a href="">火车余票</a>
<a href="">航班查询</a>
<a href="">快递查询</a>
<a href="">艺龙酒店预定</a>
<div class="clr"></div>
</li>

<li>
<a href="">彩票开奖</a>
<a href="">下厨房</a>
<a href="">爱星座</a>
<a href="">医药在线资讯</a>
<div class="clr"></div>
</li>

<li>
<a href="">塔罗占卜</a>

</ul>
</div>

------解决方案--------------------

foreach($data as $key=>$value){

if($value['pid'] == 0){//顶级大分类
$i = 1;
echo "<div class='catemenu'>";
echo "<div class='cname'>";
echo $value['name'] . "</div>";
echo "<ul><li>";
foreach($data as $k=>$v){
if($value['id'] == $v['pid']){
if($i % 5 == 0){
echo "<div class='clr'></div></li><li>";
}
echo "<a>" . $v['name'] . "</a>";
$i++;
}
}
if($i % 5 != 0){
echo "<div class='clr'></div></li>";
}

echo "</ul></div>";
}

}

楼主,可以参考一下这段代码,跟你的是相似的,替换echo代码部分就ok了!
------解决方案--------------------
本帖最后由 xuzuning 于 2013-11-27 20:23:23 编辑
foreach($catelist as $k=>$v){?> //循环大分类
foreach($catlist as $kk=>$vv){ //循环小分类
}}
你的数据是如何组织的?
  相关解决方案