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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[经验] ucenter home 实现实名认证用户投票的方法

[复制链接]
uniwant 发表于 2010-4-8 13:39:42 | 显示全部楼层 |阅读模式
UCHome插件
语言编码:  
插件名称:
插件作者:
适用版本:
家园里的投票默认为为只要是注册用户就可以参与投票,这样很容易作弊,因此尝试如下方式解决:
设想:经过实名认证的用户才可以投票。
具体操作:
为防止意外请备份admin/tpl/config.htm;source/cp_pool.php
1、打开admin/tpl/config.htm,作如下修改
查找“允许发投票”,大约在545行,
在这一行<tr></tr>的下面添加
  1.             <tr>
  2.    <td width="150">允许参与投票</td>
  3.    <td>
  4.    <input type="radio" name="config[name_allowvote]" value="1"<!--{if $configs[name_allowpoll] == 1}--> checked<!--{/if}-->>是
  5.    <input type="radio" name="config[name_allowvote]" value="0"<!--{if $configs[name_allowpoll] != '1'}--> checked<!--{/if}-->>否
  6.    </td></tr>
复制代码
更新缓存,
设置认证用户权限,比如设置为没有实名认证的没有参与投票的权限。
这样就可以在数据库_config表里输入一个name_allowvote=0;可以检查一下是否有该数据,如果有说明成功了。一般会添加在数据表的最后一行。
2、打开source/cp_pool.php
查找,
  1. //验证性别
  2.   if($poll['sex'] && $poll['sex'] != $space['sex']) {
  3.    showmessage('no_privilege');
  4.   }
复制代码
一般在252行
加入
  1.   //验证真实姓名
  2.   if(!ckrealname('vote')) {
  3.    showmessage('no_privilege');
  4.   }
复制代码
完成以上操作后,就可以了。
如果后台设置了必须实名用户才可以投票,那么只有经过验证的用户才可以投票。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-17 02:44 , Processed in 0.028010 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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