抽奖转盘 php,PHP转盘抽奖接口实例

这里的转盘抽奖随机返回一个转盘角度,概率可自己定义lottery_get.php接口文件如下:复制代码代码如下:<?php   /*session_start(); if(!isset($_SESSION['zaszh_user_id'])){     echo json_encode(array('status'=>'error','msg'=>'连接超时,请重新打开页面。'));     exit; } $user_id = $_SESSION['zaszh_user_id'];*/    $user_id = 1; // 测试用    // 转盘区域  $arr_area = array(      '0' => array('min_angle'=>1,'max_angle'=>45,'prize'=>'小米'),    '1' => array('min_angle'=>46,'max_angle'=>90,'prize'=>'拍立得'),    '2' => array('min_angle'=>91,'max_angle'=>135,'prize'=>'10元话费'),     '3' => array('min_angle'=>136,'max_angle'=>180,'prize'=>'5元话费'),     '4' => array('min_angle'=>181,'max_angle'=>225,'prize'=>'谢谢参与'),    '5' => array('min_angle'=>226,'max_angle'=>270,'prize'=>'谢谢参与'),    '6' => array('min_angle'=>271,'max_angle'=>315,'prize'=>'谢谢参与'),    '7' => array('min_angle'=>316,'max_angle'=>360,'prize'=>'谢谢参与')  );    // 选定区域  $area_selected = array();  // 随机抽取  $num_rand = mt_rand(1,10);  switch($num_rand){      // 小米      case 1: $area_selected = $arr_area[0]; break;      // 拍立得      case 2: $area_selected = $arr_area[1]; break;      // 10元话费      case 3: $area_selected = $arr_area[2]; break;      // 5元话费      case 4: $area_selected = $arr_area[3]; break;      // 谢谢参与      default:          switch(mt_rand(1,4)){              case 1: $area_selected = $arr_area[4]; break;              case 2: $area_selected = $arr_area[5]; break;              case 3: $area_selected = $arr_area[6]; break;              case 4: $area_selected = $arr_area[7]; break;          }          break;  }  echo $area_selected['prize'];    require('connect_database.php');  // 扣除答题积分  $mysqli->query("update zaszh_user set answer_points=answer_points-5 where id='{$user_id}' and answer_points>=5");  if($mysqli->affected_rows){      // 有积分      // 记录积分消耗      $mysqli->query("insert into zaszh_answer_points_consume(user_id,points_consume,consume_for,create_date) values('{$user_id}',5,'lottery',unix_timestamp(now()))");      switch($area_selected['prize']){          case '小米':              $mysqli->query("update zaszh_prize_surplus set surplus=surplus-1 where prize='小米' and surplus>0");              if($mysqli->affected_rows){                  // 有剩余                  $mysqli->query("insert into zaszh_award(user_id,prize,create_date) values('{$user_id}','小米',unix_timestamp(now()))");                  if($mysqli->affected_rows){                      echo json_encode(array('status'=>'success','msg'=>'小米'));                  }else{                      // 获奖失败                  }              }else{                  // 无剩余              }              break;          case '拍立得':              $mysqli->query("update zaszh_prize_surplus set surplus=surplus-1 where prize='拍立得' and surplus>0");              if($mysqli->affected_rows){                  // 有剩余                  $mysqli->query("insert into zaszh_award(user_id,prize,create_date) values('{$user_id}','拍立得',unix_timestamp(now()))");                  if($mysqli->affected_rows){                      echo json_encode(array('status'=>'success','msg'=>'拍立得'));                  }else{                      // 获奖失败                  }              }else{                  // 无剩余              }              break;          case '10元话费':              $mysqli->query("update zaszh_telephone_charge_surplus set charge_surplus=charge_surplus-10 where date=substring(now(),1,10) and charge_surplus>=10");              if($mysqli->affected_rows){                  // 有剩余                  $mysqli->query("insert into zaszh_award(user_id,prize,create_date) values('{$user_id}','10元话费',unix_timestamp(now()))");                  if($mysqli->affected_rows){                      echo json_encode(array('status'=>'success','msg'=>'10元话费'));                  }else{                      // 获奖失败                  }              }else{                  // 无剩余              }              break;          case '5元话费':              $mysqli->query("update zaszh_telephone_charge_surplus set charge_surplus=charge_surplus-5 where date=substring(now(),1,10) and charge_surplus>=5");              if($mysqli->affected_rows){                  // 有剩余                  $mysqli->query("insert into zaszh_award(user_id,prize,create_date) values('{$user_id}','5元话费',unix_timestamp(now()))");                  if($mysqli->affected_rows){                      echo json_encode(array('status'=>'success','msg'=>'5元话费'));                  }else{                      // 获奖失败                  }              }else{                  // 无剩余              }              break;          default:              echo json_encode(array('status'=>'success','msg'=>'谢谢参与'));      }  }else{      // 无积分      echo json_encode(array('status'=>'error','msg'=>'您的积分不足。'));  }  $mysqli->close();希望本文所述对大家的php程序设计有所帮助。

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!

免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值