################################
##HACK名称:改进投票功能 (记录哪些人投票和投了哪项)
##原作:忘了谁了!
##修改整理For D4:Freddy
##适用版本:D4
##数据库升级:无
##修改文件:misc.php,viewthread.php,
##修改所有模板:viewthread_poll.htm
##技术支持:discuz.dismall.com
################################
1 打开misc.php
找到
- if(++$pollarray['options'][$id][1] > $pollarray['max']) {
复制代码
在上面加
- //-----------------------------------------------------
- if ($pollarray['votersdetail'][$id]) {
- $pollarray['votersdetail'][$id] .= '<option>'.$discuz_user.'</option>';
- } else {
- $pollarray['votersdetail'][$id] = '<select><option>'.$discuz_user.'</option>';
- }
- //-----------------------------------------------------
复制代码
2 修改viewthread.php
- foreach($pollopts['options'] as $option) {
- $polloptions[] = array
- (
- 'option' => dhtmlspecialchars(stripslashes($option[0])),
- 'votes' => $option[1],
- 'width' => @round($option[1] * 300 / $pollopts['max']) + 2,
- 'percent' => @sprintf ("%01.2f", $option[1] * 100 / $pollopts['total'])
- );
- }
复制代码
替换为
- foreach($pollopts['options'] as $key=>$option) {
- $polloptions[] = array
- (
- 'option' => dhtmlspecialchars(stripslashes($option[0])),
- 'votes' => $option[1],
- 'width' => @round($option[1] * 300 / $pollopts['max']) + 2,
- 'percent' => @sprintf ("%01.2f", $option[1] * 100 / $pollopts['total']),
- 'voters' => $pollopts['votersdetail'][$key]
- );
- }
复制代码
3 修改viewthread_poll.htm模版
找到
- <tr><td class="header" colspan="2">
复制代码
替换为
- <tr><td class="header" colspan="3">
复制代码
找到
- <td class="altbg2" colspan="2"><span class="bold">{lang poll_voters}:</span><br><br>
复制代码
替换为
- <td class="altbg2" colspan="3"><span class="bold">{lang poll_voters}:</span><br><br>
复制代码
找到
- <b>$option[votes]</b> ($option[percent]%)</td>
复制代码
后面加入
- <td class="altbg2" width="15%">$option[voters]</select></td>
复制代码
或者:
- <!--{if $adminid==1}--><td class="altbg2" width="15%">$option[voters]</select></td><!--{/if}-->
复制代码
[ 本帖最后由 freddy 于 2005-12-13 16:02 编辑 ] |