uchome投票功能的原理分析
2011-11-03 23:38 来源:www.chinab4c.com 作者:uchome专家
uchome投票功能,是uchome里面一个很重要的功能。uchome的投票功能,他分主题和投票选项。uchome在录入主题的时候。是存储在uchome数据库表uchome_poll里面的。而他的选项是存储在uchome_polloption表里面的。
当我们录入uchome的投票功能的时候。首先是将uchome的主题录入,包括有效期,选项和规则以及介绍。然后选项通过循环存储到了数据库中。分开存储。
在我们浏览uchome的投票主题的时候。我们通过pid,能获取到uchome投票主题以及对应该投票主题的选项。就是通过以下来获取的。
   $query = $_SGLOBAL['db']->query("SELECT pf.*, p.* FROM ".tname('poll')." p LEFT JOIN ".tname('pollfield')." pf ON pf.pid=p.pid WHERE p.pid='$pid'");
 $poll = $_SGLOBAL['db']->fetch_array($query);
 if(empty($poll)) {
  showmessage('view_to_info_did_not_exist');
 }
这里有很多规则,比如该uchome投票主题是限制了性别,或者积分。那么都有严格控制。
  if($poll['credit'] && $poll['percredit'] && $poll['credit'] < $poll['percredit']) {
  $poll['percredit'] = $poll['credit'];
 }
 realname_set($poll['uid'], $poll['username']);//实名
 //限制投票
 $allowedvote = true;
 
 if(!empty($poll['sex']) && $poll['sex'] != $_SGLOBAL['member']['sex']) {
  $allowedvote = false;
 }
如果该投票过期,也是投票不了的。
   if($poll['expiration'] && $poll['expiration'] < $_SGLOBAL['timestamp']) {
   }
uchome的投票会员信息是存储在uchome数据库表uchome_polluser中的。该表中会记录投票时间和投票所头的项目。
最近更新
常用插件
- ecshop退款申请插件二次开
                                  ecshop退款申请插件介绍:ecshop系统本身带有退款功能,但是很麻烦.不能... 
- ecshop订单来源统计插件
                                  我们的站可能会和很多渠道合作。比如我们和baidu合作,我们和google合作... 
- ecshop分类/频道下flash
                                  ecshop分类/频道下flash,这个的功能是非常有用的。ecshop首页flash这个功能... 
- ecshop多位小数显示插件
                                  ecshop多位小数显示插件... 
- ecshop自定义销售排行插件
                                  我们在ecshop程序里面,能看到ecshop中的产品销售出去之后,会有销售排... 



