Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[BUG] 奇怪的现象 关于 <!--{loop}--> 跟 <!--{if}-->

[复制链接]
tw32029 发表于 2008-8-15 18:40:20 | 显示全部楼层 |阅读模式
                                <!--{loop $friendlist $key $value}-->
                                        <!--{if $value[uid]}-->
                                              $value[uid]                                
                                        <!--{/if}-->
                                <!--{/loop}-->

UCHOME 版本 1.2
这样的模组 会造成代码错乱 我在不同的档案里头尝试加入这样格式的LOOP { if(condition){ statement } } 都频频出错
然而一个一个分开运行就正常

我的首页显示底部多了一个{/if} 而 $value[uid]里的有显示出来
这个算bug吗还是我的逻辑错了?

看图 留意下方的 {/if}


[ 本帖最后由 tw32029 于 2008-8-21 12:08 编辑 ]
 楼主| tw32029 发表于 2008-8-18 09:51:32 | 显示全部楼层
怎么没人关注的 难道是我的用法错误?
回复

使用道具 举报

茄子 发表于 2008-8-18 14:05:44 | 显示全部楼层
不存在
请使用标准程序和模板
回复

使用道具 举报

zeraw 发表于 2008-8-18 15:04:48 | 显示全部楼层
是{/if}不是{/f}
马虎眼了
回复

使用道具 举报

 楼主| tw32029 发表于 2008-8-19 11:15:39 | 显示全部楼层
原帖由 zeraw 于 2008-8-18 15:04 发表
是{/if}不是{/f}
马虎眼了


if 没错
相信是茄子所说的模板问题 我再试试看好了
回复

使用道具 举报

 楼主| tw32029 发表于 2008-8-21 11:44:39 | 显示全部楼层
Okay 我发现了这个问题只要两个 <loop> <loop> 再加上 <eval> <if> </if> </loop> </loop>
代码转换过程会出错

请留意 我的2次开发码跟缓存转换之后的php 代码
<!--{loop $mutual_friend $key $value}-->
       <!--{eval $explodevusr=explode("|",$value[mf_username]);}-->
       <!--{eval $explodevuid=explode("|",$value[mf]);}-->
       <!--{eval $total_obj=count($explodevusr);}-->
       <!--{if $value[uid] ==$_SGLOBAL[supe_uid]}-->

       <!--{loop $explodevusr $k $v}-->
              <!--{eval $tunique=$k.$value[uid];}-->
              <td <!--{if $k==0}-->    <<出错地点
                             style="visibility:visible;display:block;"
                     <!--{else}-->style="visibility:hidden;display:none;"
                      <!--{/if}--> class="mf_td" id="mf$tunique">
                              <p><a class="friends_link" href="space.php?uid=$explodevuid[$k]" target="_blank">好友:$v </a></p>
              </td>
         <!--{/loop}-->
<!--{/if}-->
<!--{/loop}-->


/data/tpl_cache/
得到的缓存为 留意红色的代码
<td><a href="#mutual_friend" onClick="toggle(0,<?=$total_obj?>,<?=$value['uid']?>)">&lt;</a></td>
<?php if(is_array($explodevusr)) { foreach($explodevusr as $k => $v) { ?>
<?php $tunique=$k.$value[uid]; ?>
<td {if <?=$k?>==0}style="visibility:visible;display:block;"<?php } else { ?>style="visibility:hidden;display:none;"<?php } ?> class="mf_td" id="mf<?=$tunique?>"><p><a class="friends_link" href="space.php?uid=<?=$explodevuid[$k]?>" target="_blank">好友:<?=$v?></a></p></td>
<?php } } ?>
<td><a href="#mutual_friend" onClick="toggle(1,<?=$total_obj?>,<?=$value['uid']?>);">&gt;</a></td>
</tr>
</table>
</td>


在页面上面出现白屏 去掉出错地点之后就正常运行看得到页面

[ 本帖最后由 tw32029 于 2008-8-21 12:27 编辑 ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-15 15:33 , Processed in 0.040800 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表