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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[已答复] 一次取多条数据在两个地方显示问题(@array_slice)?

[复制链接]
xiaochun1027 发表于 2009-11-19 10:40:48 | 显示全部楼层 |阅读模式
我在官方模板首页看到可以到多条数据,然后分开显示
  1.                 <!--{block name="spacenews" parameter="order/i.viewnum DESC/limit/0,17/cachetime/86900/subjectlen/40/subjectdot/0/showdetail/1/messagelen/100/messagedot/1/cachename/hotnews"}-->
  2.                 <!--{if !empty($_SBLOCK['hotnews'])}-->
  3.                 <!--{eval $hotnews = @array_slice($_SBLOCK['hotnews'], 0, 5)}-->
  4.                 <!--{/if}-->
  5.                         <div id="new_news">
  6.                                 <h3>热点内容</h3>
  7.                                 <ul>
  8.                                         <!--{loop $hotnews $value}-->
  9.                                         <li><span class="box_r">#date('m-d',$value['dateline'])#</span><a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
  10.                                         <!--{/loop}-->
  11.                                 </ul>
  12.                         </div>
  13.                 </div><!--col3 end-->
复制代码
主要是用的<!--{eval $hotnews = @array_slice($_SBLOCK['hotnews'], 0, 5)}-->取前五条数据数据
用<!--{eval $hotnews2 = @array_slice($_SBLOCK['hotnews'], 5, 17)}-->取其后的12条数据
但我用同样的方法取不是热点的资讯就取不出来了呢?
还有代码中,如果不做这个判断(<!--{if !empty($_SBLOCK['hotnews'])}-->的话会有什么后果?
lidq.jingwu 发表于 2009-11-19 12:20:44 | 显示全部楼层
不判断会在取不到数据的情况下出现空白。
回复

使用道具 举报

 楼主| xiaochun1027 发表于 2009-11-19 14:08:33 | 显示全部楼层
不判断会在取不到数据的情况下出现空白。
lidq.jingwu 发表于 2009-11-19 12:20



    参考代码用的<!--{eval $hotnews = @array_slice($_SBLOCK['hotnews'], 0, 5)}-->取前五条数据数据
用<!--{eval $hotnews2 = @array_slice($_SBLOCK['hotnews'], 5, 17)}-->取其后的12条数据
但我用同样的方法取不是热点的资讯为什么就取不出来了呢?
回复

使用道具 举报

lidq.jingwu 发表于 2009-11-19 14:21:11 | 显示全部楼层
3# xiaochun1027


    将$hotnews2打印出来,看一下。
回复

使用道具 举报

 楼主| xiaochun1027 发表于 2009-11-19 14:43:54 | 显示全部楼层
xiaochun1027


    将$hotnews2打印出来,看一下。
lidq.jingwu 发表于 2009-11-19 14:21



    我的意思是用
  1.                 <!--{block name="spacenews" parameter="order/i.viewnum DESC/limit/0,17/cachetime/86900/subjectlen/40/subjectdot/0/showdetail/1/messagelen/100/messagedot/1/cachename/hotnews"}-->

  2.                 <!--{if !empty($_SBLOCK['hotnews'])}-->

  3.                 <!--{eval $hotnews = @array_slice($_SBLOCK['hotnews'], 0, 5)}-->

  4.                 <!--{/if}-->

  5.                         <div id="new_news">

  6.                                 <h3>热点内容</h3>

  7.                                 <ul>

  8.                                         <!--{loop $hotnews $value}-->

  9.                                         <li><span class="box_r">#date('m-d',$value['dateline'])#</span><a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>

  10.                                         <!--{/loop}-->

  11.                                 </ul>

  12.                         </div>

  13.                 </div><!--col3 end-->
复制代码
取HOTNEWS以外的数据时@array_slice就不好用了,数据取不到,是不是只有热点资讯能用@array_slice呀?如果别的资讯也想这样取多条在两个地方显示是不是要修改一些设置或代码呀?
回复

使用道具 举报

lidq.jingwu 发表于 2009-11-19 14:57:25 | 显示全部楼层
你的用法正确,估计是没有查询到足够的数据导致的。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-16 17:59 , Processed in 0.023505 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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