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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[插件] 主题列表显示评分标记(显示分数)5.0正式版

[复制链接]
jixiangsk 发表于 2006-10-7 00:24:31 | 显示全部楼层
留个名字,等完善点再修改。
回复

使用道具 举报

ling262000 发表于 2006-10-7 12:42:40 | 显示全部楼层
之前用过有问题,现在可以了吗?

[ 本帖最后由 ling262000 于 2006-10-7 12:44 编辑 ]
回复

使用道具 举报

Nameless 发表于 2006-10-7 22:02:36 | 显示全部楼层
原帖由 Darth 于 2006-9-25 01:07 发表
这个有问题,只有在第一楼添加评分的才会显示。
其它楼层的评分都不计算在内或显示出来。。
请搂主修改。。


不合实际

原帖由 Ryukyo 于 2006-9-29 12:05 发表
能否现实具体哪个积分加多少分?
例如:有两个积分:金钱和威望
怎么样在列表内显示金钱+10、威望+10


加一查询

一、修改 forumdisplay.php
查找:

  1. $querysticky = '';
  2.         $query = $db->query("SELECT $dotadd1 t.* FROM {$tablepre}threads t $dotadd2
  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 $dotadd1 t.* FROM {$tablepre}threads t $dotadd2
  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 $dotadd1 t.* FROM {$tablepre}threads t $dotadd2
  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 $dotadd1 t.*, p.rate,p.pid FROM {$tablepre}threads t $dotadd2
  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 ".($filter == 'digest' || $filter == 'type' ? $start_limit : $start_limit - $stickycount).", $tpp");

  7. } else {

  8.         $querysticky = $db->query("SELECT $dotadd1 t.*, p.rate,p.pid FROM {$tablepre}threads t $dotadd2
  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 $dotadd1 t.*, p.rate,p.pid FROM {$tablepre}threads t $dotadd2
  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)){
  2.         $pids = implode(",",$tpids);
  3.         $detail_query = $db->query("SELECT * FROM {$tablepre}ratelog WHERE pid IN ($pids)");
  4.         while ($row = $db->fetch_array($detail_query)){
  5.                 $detail_rate[$row['pid']][$row['extcredits']] += $row['score'];
  6.         }
  7. }
复制代码

二,修改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="red"> $extcredits[$k][title]  <!--{eval echo sprintf("%+d",$v);}--> </font>]
  4.             <!--{/loop}-->
  5.         <!--{/if}-->
  6.                 <!--{if $thread['rate'] > 0}-->
  7.                         <img src="{IMGDIR}/agree.gif" alt="" />
  8.                 <!--{elseif $thread['rate'] < 0}-->
  9.                         <img src="{IMGDIR}/disagree.gif" alt="" />
  10.                 <!--{/if}-->
复制代码


版权归原发布者,只是应别人要求,修改一下

[ 本帖最后由 Nameless 于 2006-10-30 15:34 编辑 ]
回复

使用道具 举报

michaelowenii 发表于 2006-10-8 17:02:47 | 显示全部楼层
这个插件可以了吗?
回复

使用道具 举报

michaelowenii 发表于 2006-10-8 17:23:09 | 显示全部楼层
原帖由 Nameless 于 2006-10-7 22:02 发表


不合实际



加一查询

一、修改 forumdisplay.php
查找:

$querysticky = '';
        $query = $db->query("SELECT $dotadd1 t.* FROM {$tablepre}threads t $dotadd2
               ...




出现这种情况


Warning: Cannot modify header information - headers already sent by (output started at ×:\&#420;&#763;&#888;&#1406;\××××\bbs\forumdisplay.php:1) in ×:\&#420;&#763;&#888;&#1406;\××××\bbs\include\global.func.php on line 190
回复

使用道具 举报

Nameless 发表于 2006-10-8 18:17:15 | 显示全部楼层
不关这个修改的事,其它的修改导致的
回复

使用道具 举报

Nameless 发表于 2006-10-9 08:00:01 | 显示全部楼层
原帖由 f0416 于 2006-10-9 02:47 发表
修改ok 但+ 號沒出來




forumdisplay.htm
原修改:

  1. [<font color="red"> $extcredits[$k][title] $v </font>]
复制代码

改为:

  1. [<font color="red"> $extcredits[$k][title] <!--{eval echo sprintf("%+d",$v);}--> </font>]
复制代码
回复

使用道具 举报

琴剑飘零 发表于 2006-10-10 18:02:19 | 显示全部楼层
扣分有沒有减号?
回复

使用道具 举报

琴剑飘零 发表于 2006-10-10 18:09:18 | 显示全部楼层
有-号,为什么 不出+号呢?
回复

使用道具 举报

aimeisha 发表于 2006-10-11 13:05:27 | 显示全部楼层
留个印..............
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-16 00:19 , Processed in 0.032606 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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