国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

80 lines
2.2KB

  1. <?php
  2. /**
  3. *
  4. * 投票
  5. *
  6. * @version $Id: vote.php$
  7. * @package DedeBIZ.Site
  8. * @copyright Copyright (c) 2020, DedeBIZ.COM
  9. * @license https://www.dedebiz.com/license
  10. * @link https://www.dedebiz.com
  11. */
  12. require(dirname(__FILE__) . "/../include/common.inc.php");
  13. require(DEDEINC . "/dedevote.class.php");
  14. require(DEDEINC . "/memberlogin.class.php");
  15. require(DEDEINC . "/userlogin.class.php");
  16. $member = new MemberLogin;
  17. $memberID = $member->M_LoginID;
  18. $time = time();
  19. $content = $memberID . '|' . $time;
  20. $file = DEDEDATA . '/cache/vote_' . $aid . '_' . $member->M_ID . '.inc'; //存放会员投票记录的缓存文件
  21. $loginurl = $cfg_basehost . "/member";
  22. $ENV_GOBACK_URL = empty($_SERVER['HTTP_REFERER']) ? '' : $_SERVER['HTTP_REFERER'];
  23. if (empty($dopost)) $dopost = '';
  24. $aid = (isset($aid) && is_numeric($aid)) ? $aid : 0;
  25. if ($aid == 0) die(" Request Error! ");
  26. if ($aid == 0) {
  27. ShowMsg("没指定投票项目的ID!", "-1");
  28. exit();
  29. }
  30. $vo = new DedeVote($aid);
  31. $rsmsg = '';
  32. $row = $dsql->GetOne("SELECT * FROM `#@__vote` WHERE aid='$aid'");
  33. //判断是否允许游客进行投票
  34. if ($row['isallow'] == 1) {
  35. if (!$member->IsLogin()) {
  36. ShowMsg('请先登录再进行投票', $loginurl);
  37. exit();
  38. }
  39. }
  40. if ($dopost == 'send') {
  41. if (!empty($voteitem)) {
  42. $rsmsg = "<br />&nbsp;你方才的投票状态:" . $vo->SaveVote($voteitem) . "<br />";
  43. } else {
  44. $rsmsg = "<br />&nbsp;你刚才没选择任何投票项目!<br />";
  45. }
  46. if ($row['isenable'] == 1) {
  47. ShowMsg('此投票项未启用,暂时不能进行投票', $ENV_GOBACK_URL);
  48. exit();
  49. }
  50. }
  51. $voname = $vo->VoteInfos['votename'];
  52. $totalcount = $vo->VoteInfos['totalcount'];
  53. $starttime = GetDateMk($vo->VoteInfos['starttime']);
  54. $endtime = GetDateMk($vo->VoteInfos['endtime']);
  55. $votelist = $vo->GetVoteResult("98%", 30, "30%");
  56. //判断是否允许被查看
  57. $admin = new userLogin;
  58. if ($dopost == 'view') {
  59. if ($row['view'] == 1 && empty($admin->userName)) {
  60. ShowMsg('此投票项不允许查看结果', $ENV_GOBACK_URL);
  61. exit();
  62. }
  63. }
  64. //显示模板(简单PHP文件)
  65. include(DEDETEMPLATE . '/plus/vote.htm');