跳转到主内容
极星编程网:以代码为星,赴技术山海!

PHP转盘抽奖接口实例_PHP

本文实例讲述了php转盘抽奖接口的实现方法。分享给大家供大家参考。具体如下:这里的转盘抽奖随机返回一个转盘角度,概率可自己定义lottery_get.php接口文件如下:PHP 8.5.5 PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。

下载代码如下:/*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程序设计有所帮助。

立即学习“PHP免费学习笔记(深入)

”;

相关文章