Example #1
0
 public function doMobileLottery()
 {
     global $_GPC, $_W;
     $id = intval($_GPC['id']);
     $sql = 'SELECT * FROM ' . tablename('zzz_reply') . ' WHERE `rid` = :rid';
     $params = array(':rid' => $id);
     $zzz = pdo_fetch($sql, $params);
     if (empty($zzz)) {
         message('非法访问,请重新发送消息进入!');
     }
     checkauth();
     load()->model("mc");
     $profile = mc_require($_W['member']['uid'], array('nickname', 'mobile'), '需要完善资料后才能继续.');
     $startgame = 1;
     if ($zzz['start_time'] > TIMESTAMP) {
         $startgame = 0;
         $str = "活动没开始";
     }
     if ($zzz['end_time'] < TIMESTAMP) {
         $startgame = 0;
         $str = "活动已结束";
     }
     if (empty($_W['fans']['fanid'])) {
         $sql = 'SELECT `fanid` FROM ' . tablename('mc_mapping_fans') . ' WHERE `uid` = :uid';
         $params = array(':uid' => $_W['member']['uid']);
         $fansId = pdo_fetchcolumn($sql, $params);
         if (empty($fansId)) {
             message('必须关注公众号才可以进入游戏', $this->createMobileUrl('introduce', array('id' => $id)), 'error');
         }
         $_W['fans']['fanid'] = $fansId;
     }
     $sql = 'SELECT * FROM ' . tablename('zzz_user') . ' WHERE `rid` = :rid AND `fanid` = :fanid';
     $params = array(':rid' => $id, ':fanid' => $_W['fans']['fanid']);
     $myuser = pdo_fetch($sql, $params);
     // 用户不存在插入一条数据
     if (empty($myuser)) {
         $zzz_user = array('rid' => $id, 'count' => 0, 'points' => 0, 'fanid' => $_W['fans']['fanid'], 'createtime' => TIMESTAMP);
         pdo_insert('zzz_user', $zzz_user);
     }
     $myph = '';
     if (!empty($myuser)) {
         $sql = 'SELECT count(*) FROM ' . tablename('zzz_user') . ' WHERE `rid` = :rid AND `points` > :points';
         $params = array(':rid' => $id, ':points' => $myuser['points']);
         $ph = pdo_fetchcolumn($sql, $params);
         $myph = intval($ph) + 1;
     }
     // 分享增加体力
     $shareFid = intval($_GPC['shareuid']);
     if (!empty($shareFid)) {
         $sql = 'SELECT `id` FROM ' . tablename('zzz_share') . ' WHERE `rid` = :rid AND `fanid` = :fanid AND `sharefid` = :sharefid';
         $params = array(':rid' => $id, ':fanid' => $_W['fans']['fanid'], 'sharefid' => $shareFid);
         $shareInfo = pdo_fetchcolumn($sql, $params);
         if (empty($shareInfo)) {
             pdo_insert('zzz_share', array('rid' => $id, 'fanid' => $_W['fans']['fanid'], 'sharefid' => $shareFid));
             pdo_update('zzz_user', array('sharevalue' => $myuser['sharevalue'] + $zzz['sharevalue']), array('fanid' => $shareFid, 'rid' => $id));
         }
     }
     $energylimit = ($zzz['maxlottery'] + $zzz['prace_times']) * 10;
     include $this->template('gamex');
 }
Example #2
0
 public function doMobileWelcome()
 {
     global $_W, $_GPC;
     checkauth();
     $rid = intval($_GPC['rid']);
     $reply = pdo_fetch("SELECT * FROM " . tablename('shake_reply') . " WHERE rid = :rid", array(':rid' => $rid));
     if (empty($reply)) {
         message('抱歉,此活动不存在或是还未开始!', 'refresh', 'error');
     }
     load()->model('mc');
     $profile = mc_fetch($_W['member']['uid'], array('realname', 'mobile', 'avatar'));
     if (empty($profile['avatar'])) {
         mc_oauth_userinfo();
     }
     if (empty($profile['realname']) || empty($profile['mobile'])) {
         mc_require($_W['member']['uid'], array('realname', 'mobile'));
     }
     $member = pdo_fetch("SELECT * FROM " . tablename('shake_member') . " WHERE rid = :rid AND openid = :openid", array(':rid' => $reply['rid'], ':openid' => $_W['member']['uid']));
     if (!empty($member)) {
         header('Location: ' . $this->createMobileUrl('detail', array('rid' => $reply['rid'])));
         exit;
     }
     $reply['rule'] = html_entity_decode($reply['rule']);
     include $this->template('welcome');
 }
Example #3
0
 public function doMobileMessage()
 {
     global $_GPC, $_W;
     $op = trim($_GPC['op']) ? trim($_GPC['op']) : 'list';
     $set = pdo_fetch("SELECT * FROM " . tablename('we7car_message_set') . " WHERE weid = :weid ORDER BY `id` DESC LIMIT 1", array(':weid' => $_W['uniacid']));
     if ($set == false) {
         $set = array('status' => 1, 'isshow' => 1);
     }
     if ($op == 'list') {
         if ($set['status'] == 0) {
             message('留言墙尚未开启,请耐心等待');
         }
         $total = pdo_fetchcolumn("SELECT count(*) FROM " . tablename('we7car_message_list') . " WHERE fid = 0 AND isshow = 1 AND weid = :weid", array(':weid' => $_W['uniacid']));
         $pindex = max(1, intval($_GPC['page']));
         $psize = 20;
         $pager = pagination($total, $pindex, $psize);
         $messagelist = pdo_fetchall("SELECT * FROM " . tablename('we7car_message_list') . " WHERE  weid = :weid and fid=0 and isshow=1  ORDER BY create_time DESC  LIMIT " . ($pindex - 1) * $psize . ',' . $psize, array(':weid' => $_W['uniacid']));
         foreach ($messagelist as &$v) {
             $v['reply'] = pdo_fetchall("SELECT * FROM " . tablename('we7car_message_list') . " WHERE  weid = :weid AND fid = :fid AND isshow=1  LIMIT 20", array(':weid' => $_W['uniacid'], ':fid' => $v['id']));
         }
         //获取fans表中的username
         // $nickname = pdo_fetchcolumn("SELECT `nickname` FROM " . tablename('fans') . " WHERE weid = :weid AND `from_user` = :from_user LIMIT 1", array(':from_user' => $_W['fans']['from_user'], ':weid' => $_W['uniacid']));
         $mc = mc_require($_W['member']['uid'], array('nickname'));
         $nickname = $m['nickname'];
         include $this->template('message_list');
     }
     if ($op == 'ajax') {
         if (empty($_W['fans']['from_user'])) {
             $data['msg'] = '登陆过期,请重新从微信进入!';
             $data['success'] = false;
         } else {
             $sql = "SELECT * FROM " . tablename('we7car_message_list') . " WHERE from_user = :from_user AND weid = :weid ORDER BY id DESC";
             $params = array(':weid' => $_W['uniacid'], ':from_user' => $_W['fans']['from_user']);
             $message = pdo_fetch($sql, $params);
             $insert = array('weid' => $_W['uniacid'], 'nickname' => trim($_GPC['nickname']), 'info' => trim($_GPC['info']), 'fid' => intval($_GPC['fid']), 'from_user' => $_W['fans']['from_user'], 'isshow' => $set['isshow'], 'create_time' => TIMESTAMP);
             if (empty($insert['nickname'])) {
                 if (empty($_W['member']['uid'])) {
                     $sql = "SELECT nickname FROM " . tablename('mc_mapping_fans') . " WHERE uniacid = :uniacid  AND openid = :from_user";
                     $params = array(':uniacid' => $_W['uniacid'], ':from_user' => $_W['fans']['from_user']);
                     $nickname = pdo_fetchcolumn($sql, $params);
                     if (empty($nickname)) {
                         $nickname = $_W['fans']['from_user'];
                     }
                 } else {
                     load()->model('mc');
                     $nickname = mc_fetch($_W['member']['uid'], array('nickname'));
                     $nickname = $nickname['nickname'];
                 }
                 $insert['nickname'] = $nickname;
             }
             if (empty($message)) {
                 $id = pdo_insert('we7car_message_list', $insert);
                 $data['success'] = true;
                 $data['msg'] = '留言发表成功';
                 if ($set['isshow'] == 0) {
                     $data['msg'] = $data['msg'] . ',进入审核流程';
                 }
             } else {
                 if (TIMESTAMP - $message['create_time'] < 5) {
                     $data['msg'] = '您的留言太过频繁,请5秒后留言';
                     $data['success'] = false;
                 } else {
                     $id = pdo_insert('we7car_message_list', $insert);
                     $data['success'] = true;
                     $data['msg'] = '留言发表成功';
                     if ($set['isshow'] == 0) {
                         $data['msg'] = $data['msg'] . ',进入审核流程';
                     }
                 }
             }
         }
         echo json_encode($data);
     }
 }
Example #4
0
 public function doMobileLottery()
 {
     global $_GPC, $_W;
     checkauth();
     load()->model('mc');
     mc_require($_W['member']['uid'], array('realname', 'mobile'), '需要完善资料后才能砸蛋.');
     $where = ' WHERE `rid` = :rid';
     $params = array(':rid' => intval($_GPC['id']));
     $sql = 'SELECT * FROM ' . tablename('egg_reply') . $where;
     $egg = pdo_fetch($sql, $params);
     if (empty($egg)) {
         message('非法访问,请重新发送消息进入砸蛋页面!');
     }
     if (TIMESTAMP < $egg['starttime']) {
         message('活动还没有开始!');
     }
     if (TIMESTAMP > $egg['endtime']) {
         message('活动已经结束啦!');
     }
     $where .= ' AND `uniacid` = :uniacid AND `uid` = :uid';
     $params[':uniacid'] = $_W['uniacid'];
     $params[':uid'] = $_W['member']['uid'];
     $params[':createtime'] = strtotime(date('Y-m-d'));
     // 当日砸蛋次数
     $sql = 'SELECT COUNT(*) FROM ' . tablename('egg_winner') . $where . ' AND `createtime` > :createtime';
     $total = pdo_fetchcolumn($sql, $params);
     // 会员信息
     $member = mc_fetch($_W['member']['uid'], array('realname', 'mobile'));
     // 我的奖品
     $sql = 'SELECT `award`, `description` FROM ' . tablename('egg_winner') . $where . ' ORDER BY `createtime` DESC';
     unset($params[':createtime']);
     $myAward = pdo_fetchall($sql, $params);
     // 中奖名单
     $sql = 'SELECT `award`, `realname` FROM ' . tablename('egg_winner') . ' AS `w` JOIN ' . tablename('mc_members') . ' AS `m` ON `w`.`uid` = `m`.`uid` WHERE `rid` = :rid ORDER BY `w`.`id` DESC LIMIT 20';
     $otherAward = pdo_fetchall($sql, array(':rid' => $params[':rid']));
     // 分享信息
     $shareTitle = empty($egg['title']) ? '砸蛋抽奖' : $egg['title'];
     $shareDesc = $egg['description'];
     $shareImage = tomedia($egg['picture']);
     include $this->template('lottery');
 }
Example #5
0
 public function doMobileOauthuserinfo()
 {
     global $_W, $_GPC;
     load()->model('mc');
     // 假设当前应用必需会员头像
     $avatar = '';
     // 1 如果是会员(存在 uid),从会员信息中获取
     if (!empty($_W['member']['uid'])) {
         $member = mc_fetch($_W['member']['uid']);
         if (!empty($member)) {
             $avatar = $member['avatar'];
         }
     }
     // 2 如果存在 fans 记录, 从 fans 中获取
     if (empty($avatar)) {
         $fan = mc_fansinfo($_W['openid']);
         if (!empty($fan) && !empty($fan['tag'])) {
             $avatar = $fan['tag']['avatar'];
         }
     }
     //3 最后调用网页授权, 如果有权限
     if (empty($avatar)) {
         if (!empty($_W['oauth_account'])) {
             $userinfo = mc_oauth_userinfo();
             if (is_error($userinfo)) {
                 // you code here
                 message($ret['message']);
             } else {
                 $avatar = $userinfo['tag']['avatar'];
             }
         } else {
             mc_require($_W['uid'], array('avatar'));
         }
     }
     echo "<img src='{$avatar}'>";
 }
Example #6
0
 public function doMobileLottery()
 {
     global $_GPC, $_W;
     $title = '打气球送积分';
     $useragent = addslashes($_SERVER['HTTP_USER_AGENT']);
     if (strpos($useragent, 'MicroMessenger') === false && strpos($useragent, 'Windows Phone') === false) {
         //message('请使用微信客户端进入打气球吧!');
     }
     checkauth();
     load()->model('mc');
     mc_require($_W['member']['uid'], array('realname', 'mobile'), '需要完善资料后才能打气球.');
     $fromuser = $_W['fans']['from_user'];
     //$profile = fans_require($fromuser, array('realname', 'mobile', 'qq'), '需要完善资料后才能打气球.');
     $id = intval($_GPC['id']);
     $dqq = pdo_fetch("SELECT id, maxlottery, default_tips, rule FROM " . tablename('dqq_reply') . " WHERE rid = '{$id}' LIMIT 1");
     if (empty($dqq)) {
         message('非法访问,请重新发送消息进入打气球页面!');
     }
     $total = pdo_fetchcolumn("SELECT COUNT(*) FROM " . tablename('dqq_winner') . " WHERE createtime > '" . strtotime(date('Y-m-d')) . "' AND from_user = '******' ");
     $member = fans_search($fromuser);
     $myaward = pdo_fetchall("SELECT award, description FROM " . tablename('dqq_winner') . " WHERE from_user = '******'  AND rid = '{$id}' ORDER BY createtime DESC");
     $sql = "SELECT a.award, b.realname FROM " . tablename('dqq_winner') . " AS a\r\n\t\t\t\t  LEFT JOIN " . tablename('mc_mapping_fans') . " f on f.openid = a.from_user\r\n                  LEFT JOIN " . tablename('mc_members') . " b ON b.uid = f.uid WHERE b.mobile <> '' AND b.realname <> ''  AND a.rid = '{$id}' ORDER BY a.createtime DESC LIMIT 20";
     $otheraward = pdo_fetchall($sql);
     include $this->template('lottery');
 }
Example #7
0
 public function doMobilePtjperfect()
 {
     //这个操作被定义用户  呈现用户完善信息的页面
     global $_W, $_GPC;
     require_once 'sms.php';
     load()->model('mc');
     load()->func('tpl');
     $avatar = '';
     $openid = $_W['openid'];
     $count = 0;
     $uid = $_W['member']['uid'];
     if (!empty($_W['member']['uid'])) {
         $member = mc_fetch(intval($_W['member']['uid']), array('avatar', 'nickname'));
         if (!empty($member)) {
             $avatar = $member['avatar'];
             $nickname = $member['nickname'];
         }
     }
     if (empty($avatar)) {
         $fan = mc_fansinfo($_W['openid']);
         if (!empty($fan)) {
             $avatar = $fan['avatar'];
         }
     }
     if (empty($avatar)) {
         $userinfo = mc_oauth_userinfo();
         if (!is_error($userinfo) && !empty($userinfo) && is_array($userinfo) && !empty($userinfo['avatar'])) {
             $avatar = $userinfo['avatar'];
             $nickname = $userinfo['nickname'];
         }
     }
     if (empty($avatar) && !empty($_W['member']['uid'])) {
         $avatar = mc_require($_W['member']['uid'], array('avatar'));
     }
     if (empty($avatar)) {
         // 提示用户关注公众号。;
         //echo "最终没有获取到头像,follow: {$_W['fans']['follow']}";
     } else {
         $src = $avatar;
     }
     //////////////////////////////////////mc调用结束////////////////////////////
     $sms = json_decode($sms, true);
     if ($_GPC['tel'] and $_GPC['verify'] !== 'ing') {
         //对TEL进行动态正则匹配
         $tel = $_GPC['tel'];
         $t = preg_match('/^1[34578]\\d{9}$/', $tel);
         if ($t) {
             //给前端号码
             $tel = $_GPC['tel'];
             message('tel_success');
         } else {
             message('tel_fail');
         }
     }
     if ($_GPC['verify'] === 'ing') {
         //开始构造短信信息
         $statusStr = array("0" => "POSTED", "-1" => "参数不全", "-2" => "服务器空间不支持,请确认支持curl或者fsocket,联系您的空间商解决或者更换空间!", "30" => "密码错误", "40" => "账号不存在", "41" => "余额不足", "42" => "帐户已过期", "43" => "IP地址限制", "50" => "内容含有敏感词");
         $smsapi = "http://api.smsbao.com/";
         //$user = "******"; //短信平台帐号
         $user = $sms['sms_account'];
         //$pass = md5("wa7plus"); //短信平台密码
         $pass = md5($sms['sms_password']);
         $m_content = substr(time(), -4, 4);
         //要发送的短信内容
         $time = 1;
         $content = "【老司机】" . "您的验证码为: {$m_content}," . "在{$time}分钟内有效---{$_W['account']['name']}";
         $phone = $_GPC['tel'];
         //要发送短信的手机号码
         $sendurl = $smsapi . "sms?u=" . $user . "&p=" . $pass . "&m=" . $phone . "&c=" . urlencode($content);
         $result = file_get_contents($sendurl);
         $msg = $statusStr[$result];
         $resarr = array("msg" => $msg, "content" => $m_content);
         $res = json_encode($resarr);
         message($res);
     }
     $name = $_GPC['name'];
     $phone = $_GPC['phone'];
     $openid = $_W['openid'];
     if (isset($name) && isset($phone)) {
         pdo_insert('ptj_profile', array('name' => $name, 'phone' => $phone, 'sure' => 1, 'openid' => $openid));
     }
     include $this->template('perfect');
 }
Example #8
0
 public function doMobileLottery()
 {
     global $_GPC, $_W;
     if (empty($_W['fans']['from_user'])) {
         message('非法访问,请重新发送消息进入砸蛋页面!');
     }
     $fromuser = $_W['fans']['from_user'];
     checkauth();
     load()->model('mc');
     mc_require($_W['member']['uid'], array('realname', 'mobile', 'qq'), '需要完善资料后才能砸蛋.');
     $id = intval($_GPC['id']);
     $egg = pdo_fetch("SELECT * FROM " . tablename('egg_reply') . " WHERE rid = '{$id}' LIMIT 1");
     if (empty($egg)) {
         message('非法访问,请重新发送消息进入砸蛋页面!');
     }
     $total = pdo_fetchcolumn("SELECT COUNT(*) FROM " . tablename('egg_winner') . " WHERE createtime > '" . strtotime(date('Y-m-d')) . "' AND from_user = '******' AND status <> 3 AND award <> ''");
     $member = fans_search($fromuser);
     $myaward = pdo_fetchall("SELECT award, description FROM " . tablename('egg_winner') . " WHERE from_user = '******' AND award <> '' AND rid = '{$id}' ORDER BY createtime DESC");
     $sql = "SELECT a.award, b.realname FROM " . tablename('egg_winner') . "  a LEFT JOIN " . tablename('mc_mapping_fans') . " f on f.openid = a.from_user\r\n\t\t\t\tLEFT JOIN " . tablename('mc_members') . " b ON b.uid = f.uid WHERE b.mobile <> '' AND b.realname <> '' AND a.award <> '' AND a.rid = '{$id}'\r\n\t\t\t\tORDER BY a.createtime DESC LIMIT 20";
     $otheraward = pdo_fetchall($sql);
     // 分享信息
     $shareTitle = '砸蛋抽奖';
     $shareDesc = $egg['description'];
     $shareLink = $_W['siteroot'] . 'app' . ltrim($this->createMobileUrl('lottery', array('id' => $id, 'share' => 1)), '.');
     $shareImage = tomedia($egg['picture']);
     include $this->template('lottery');
 }
Example #9
0
 public function doMobileInfo()
 {
     global $_GPC, $_W;
     $title = '摇骰子抽奖';
     $id = intval($_GPC['id']);
     $fromuser = $_W['fans']['from_user'];
     $sql = "SELECT COUNT(*) FROM " . tablename('bbb_user') . " WHERE  from_user = '******' and rid=" . $id;
     $isuser = pdo_fetchcolumn($sql);
     //用户不存在,就插入
     if (!$isuser) {
         $bbb_user = array('rid' => $id, 'count' => 0, 'points' => 0, 'from_user' => $fromuser, 'createtime' => TIMESTAMP);
         pdo_insert('bbb_user', $bbb_user);
     }
     load()->model('mc');
     $profile = mc_require($_W['member']['uid'], array('nickname', 'mobile'), '需要完善资料后才能摇骰子.');
     $bbb = pdo_fetch("SELECT * FROM " . tablename('bbb_reply') . " WHERE rid = '{$id}' LIMIT 1");
     $bbb['descriptions'] = str_replace("\r", "", $bbb['description']);
     $bbb['descriptions'] = str_replace("\n", "", $bbb['descriptions']);
     if (empty($bbb)) {
         message('非法访问,请重新发送消息进入摇骰子页面!');
     }
     $bbb['description'] = str_replace("\n", "", $bbb['description']);
     $bbb['description'] = str_replace("\r", "", $bbb['description']);
     $sql = "SELECT COUNT(*) FROM " . tablename('bbb_winner') . " WHERE createtime > '" . strtotime(date('Y-m-d')) . "' AND from_user = '******' and rid=" . $id;
     $totals = pdo_fetchcolumn($sql);
     $myuser = pdo_fetch("SELECT id,points,count FROM " . tablename('bbb_user') . " WHERE  from_user = '******' AND rid=" . $id);
     $arr_times = $this->get_today_times($totals, $bbb['maxlottery'], $bbb['prace_times'], $myuser['count']);
     include $this->template('info');
 }