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

 找回密码
 立即注册
搜索

[已答复] 求助:混合调用公告和调查的排序问题???

[复制链接]
Jinooo 发表于 2009-9-17 17:37:49 | 显示全部楼层 |阅读模式
我是这样混合调用公告和调查的
  1. <ul>
  2. <!--{block name="announcement" parameter="order/displayorder DESC,starttime DESC/limit/0,2/cachetime/96400/subjectlen/34/subjectdot/0/cachename/announce"}-->
  3. <!--{loop $_SBLOCK['announce'] $value}-->
  4. <li>公告:<a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
  5. <!--{/loop}-->
  6. <!--{block name="poll" parameter="order/dateline DESC/limit/0,1/cachetime/80000/subjectlen/36/cachename/poll"}-->
  7. <!--{loop $_SBLOCK['poll'] $value}-->
  8. <li>调查:<a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
  9. <!--{/loop}-->
  10. </ul>
复制代码
这样调出来的数据时公告和公告在一起,调查和调查在一起。我想按照时间来对公告和调查进行混合排序,不知道有什么方法可以实现??
回复

使用道具 举报

lidq.jingwu 发表于 2009-9-17 17:39:18 | 显示全部楼层
看文档吧:
SupSite 7.0 页面文件与模块关系说明:http://faq.comsenz.com/viewnews-507
教您如何读懂模块代码里的参数:http://faq.comsenz.com/viewnews-312
SupeSite7.0数据调用模块参数详解:http://faq.comsenz.com/viewnews-696
回复

使用道具 举报

 楼主| Jinooo 发表于 2009-9-17 17:42:24 | 显示全部楼层
回版主,我知道在单独调用公告或是调查的时候,可以通过函数来控制排序,那要是公告和调查放在一起进行排序,那该怎么排呢?
回复

使用道具 举报

lidq.jingwu 发表于 2009-9-17 17:44:09 | 显示全部楼层
可以自已写一个函数,将查询出来的数据作为两个参数传进去,然后再处理,将结果输出。
但这种方法太繁琐了,不好做。
回复

使用道具 举报

 楼主| Jinooo 发表于 2009-9-17 17:47:09 | 显示全部楼层
啊,看着挺难,版主能不能给个思路:比如,一条公告,一条调查放在一组,然后再循环?
回复

使用道具 举报

littlehz 发表于 2009-9-17 17:53:19 | 显示全部楼层
用PHP函数,将这两个二维数组 $_SBLOCK['announce'] 和 $_SBLOCK['poll'],放在另外一个数组中例如$aaa,然后用PHP函数对$aaa中的数据排序,最后单个loop循环输出$aaa。
当然这个数组合并以及排序的函数要自己到网上找找,记得用<!--{eval print_r($aaa);}-->及时测试效果

评分

1

查看全部评分

回复

使用道具 举报

 楼主| Jinooo 发表于 2009-9-18 09:05:55 | 显示全部楼层
本帖最后由 Jinooo 于 2009-9-18 09:12 编辑

其实我有个笨方法就是通过修改limit/0,1 来实现的,每次只调用一条,然后修改limit/0的数值实现,但是要事先排列好顺序!

这个方法最大的缺点是每条都要单独调用,适合少量混合调用公告和调查。
<!--{block name="announcement" parameter="order/displayorder DESC,starttime DESC/limit/0,1/cachetime/96400/subjectlen/34/subjectdot/0/cachename/announce"}-->
<!--{loop $_SBLOCK['announce'] $value}-->
<li>公告:<a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
<!--{/loop}-->

<!--{block name="poll" parameter="order/dateline DESC/limit/0,1/cachetime/80000/subjectlen/36/cachename/poll"}-->
<!--{loop $_SBLOCK['poll'] $value}-->
<li>调查:<a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
<!--{/loop}-->

<!--{block name="announcement" parameter="order/displayorder DESC,starttime DESC/limit/1,1/cachetime/96400/subjectlen/34/subjectdot/0/cachename/announce"}-->
<!--{loop $_SBLOCK['announce'] $value}-->
<li>公告:<a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
<!--{/loop}-->

<!--{block name="poll" parameter="order/dateline DESC/limit/1,1/cachetime/80000/subjectlen/36/cachename/poll"}-->
<!--{loop $_SBLOCK['poll'] $value}-->
<li>调查:<a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
<!--{/loop}-->

<!--{block name="announcement" parameter="order/displayorder DESC,starttime DESC/limit/2,1/cachetime/96400/subjectlen/34/subjectdot/0/cachename/announce"}-->
<!--{loop $_SBLOCK['announce'] $value}-->
<li>公告:<a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
<!--{/loop}-->

<!--{block name="poll" parameter="order/dateline DESC/limit/2,1/cachetime/80000/subjectlen/36/cachename/poll"}-->
<!--{loop $_SBLOCK['poll'] $value}-->
<li>调查:<a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
<!--{/loop}-->
回复

使用道具 举报

lidq.jingwu 发表于 2009-9-18 09:09:43 | 显示全部楼层
这个问题是数据处理的问题,将数据全部取出来,再想办法对它进行处理吧。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-13 17:12 , Processed in 0.086403 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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