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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[发布] 正确的主题列表显示详细评分For Dz 6.0

[复制链接]
bistpon1 发表于 2007-10-15 20:47:11 | 显示全部楼层 |阅读模式
已修正原先的笔误

此帖不是原创
是更改5.5的插件而来
找了一下,没自己喜欢的,干脆修改一下发布这个无错的主题列表显示详细评分
经过自己论坛Discuz! 6.0.0测试无误

插件名称:主题列表显示详细评分For Dz 6.0
适用版本:Discuz 6.0
修改档案: forumdisplay.php
修改模版: forumdisplay.htm

一、修改 forumdisplay.php

查找:
  1. $querysticky = '';
  2. $query = $db->query("SELECT t.* FROM {$tablepre}threads t
  3.   WHERE t.fid='$fid' $filteradd AND $displayorderadd
  4.   ORDER BY t.displayorder DESC, t.$orderby $ascdesc
  5.   LIMIT ".($filterbool ? $start_limit : $start_limit - $stickycount).", $tpp");
  6. } else {
  7. $querysticky = $db->query("SELECT t.* FROM {$tablepre}threads t
  8.   WHERE t.tid IN ($stickytids) AND t.displayorder IN (2, 3)
  9.   ORDER BY displayorder DESC, $orderby $ascdesc
  10.   LIMIT $start_limit, ".($stickycount - $start_limit < $tpp ? $stickycount - $start_limit : $tpp));
  11. if($tpp - $stickycount + $start_limit > 0) {
  12.   $query = $db->query("SELECT t.* FROM {$tablepre}threads t
  13.    WHERE t.fid='$fid' $filteradd AND $displayorderadd
  14.    ORDER BY displayorder DESC, $orderby $ascdesc
  15.    LIMIT ".($tpp - $stickycount + $start_limit));
  16. } else {
  17.   $query = '';
复制代码
替换为:
  1. $querysticky = '';
  2.         $query = $db->query("SELECT t.*, p.rate, p.pid FROM {$tablepre}threads t
  3.                 LEFT JOIN {$tablepre}posts p USING(tid, dateline)
  4.                 WHERE t.fid='$fid' $filteradd AND $displayorderadd
  5.                 ORDER BY t.displayorder DESC, t.$orderby $ascdesc
  6.                 LIMIT ".($filterbool ? $start_limit : $start_limit - $stickycount).", $tpp");

  7. } else {

  8.         $querysticky = $db->query("SELECT t.*, p.rate,p.pid FROM {$tablepre}threads t
  9.                 LEFT JOIN {$tablepre}posts p USING(tid, dateline)
  10.                 WHERE t.tid IN ($stickytids) AND t.displayorder IN (2, 3)
  11.                 ORDER BY displayorder DESC, $orderby $ascdesc
  12.                 LIMIT $start_limit, ".($stickycount - $start_limit < $tpp ? $stickycount - $start_limit : $tpp));

  13.         if($tpp - $stickycount + $start_limit > 0) {
  14.                 $query = $db->query("SELECT t.*, p.rate,p.pid FROM {$tablepre}threads t
  15.                       LEFT JOIN {$tablepre}posts p USING(tid, dateline)
  16.                         WHERE t.fid='$fid' $filteradd AND $displayorderadd
  17.                         ORDER BY displayorder DESC, $orderby $ascdesc
  18.                         LIMIT ".($tpp - $stickycount + $start_limit));
  19.         } else {
  20.                 $query = '';
复制代码
查找:
  1. $threadlist[] = $thread;
复制代码
下面一行新增加
  1. $tpids[] = $thread['pid'];
复制代码
查找:
  1. $separatepos = $separatepos ? $separatepos + 1 : ($announcement ? 1 : 0);
复制代码
上面新增:
  1. if (is_array($tpids) && count($tpids)>0){
  2.         $tpids = array_filter($tpids,create_function('$_','return is_numeric($_);'));
  3.         @$pids = implode(",",$tpids);
  4.         if ($pids) {
  5.          @$detail_query = $db->query("SELECT * FROM {$tablepre}ratelog WHERE pid IN ($pids)");
  6.          if ($detail_query){
  7.           while ($row = $db->fetch_array($detail_query)){
  8.                   $detail_rate[$row['pid']][$row['extcredits']] += $row['score'];
  9.           }
  10.          } else {
  11.            $detail_rate = array();
  12.          }
  13.         }
  14. }
复制代码
二、修改forumdisplay.htm
查找:
  1. <!--{if $thread['rate'] > 0}-->
  2.                         <img src="{IMGDIR}/agree.gif" alt="" />
  3.                 <!--{elseif $thread['rate'] < 0}-->
  4.                         <img src="{IMGDIR}/disagree.gif" alt="" />
  5.                 <!--{/if}-->
复制代码
替换为:
  1.                                         <!--{if $thread['rate']}-->
  2.             <!--{loop $detail_rate[$thread[pid]] $k $v}-->
  3.                 [<font color=#00FF00> $extcredits[$k][title]
  4.                 <!--{eval echo sprintf("%+d",$v);}--> </font>]
  5.             <!--{/loop}-->
  6.                     <!--{/if}-->
复制代码
演示请见附件:

喜欢的话,有空到我的论坛坐坐吧~

[ 本帖最后由 bistpon1 于 2007-10-17 21:31 编辑 ]

评分

2

查看全部评分

jjeenn 发表于 2007-10-15 21:27:21 | 显示全部楼层
占个位置...留个脚印
回复

使用道具 举报

四川学生网 发表于 2007-10-15 21:40:21 | 显示全部楼层
位置~
回复

使用道具 举报

罗伊-杜 发表于 2007-10-15 22:27:23 | 显示全部楼层
占个位置........
回复

使用道具 举报

e_zailai 发表于 2007-10-15 23:57:33 | 显示全部楼层
留个位,支持支持
回复

使用道具 举报

异域幽魂 发表于 2007-10-16 03:10:06 | 显示全部楼层
按照你的方法改了,我全部的帖子就看不到了

我又改了回来
回复

使用道具 举报

javascrif 发表于 2007-10-16 09:34:12 | 显示全部楼层
不行哦改完后,一个帖子都不显示了
回复

使用道具 举报

iconsky 发表于 2007-10-17 10:40:32 | 显示全部楼层
是啊,改了后都不显示帖子了
楼主请修正一下吧,很期待这个
回复

使用道具 举报

潭龙 发表于 2007-10-17 11:11:44 | 显示全部楼层
很想要,但看楼上几个回复怕了,不敢装了
回复

使用道具 举报

jy02791737 发表于 2007-10-17 11:15:03 | 显示全部楼层
期待楼主修正啊:) :)
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 13:33 , Processed in 0.038350 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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