<?php header("content-type:text/html;charset=utf-8"); //开奖时间 session_start(); $_SESSION["time"]='2016-11-15 11:00:00'; $datatime=$_SESSION["time"]; //接收数据 用户名和数字 $name=$_POST['username']; $num=(int)$_POST['pwd']; if($num<1){ echo "<script>alert('不能输入小于0的数字');location='denglu.php';</script>"; } //当前时间2016-11-15 11:45:25 $time=date('Y-m-d H:i:s',time()); $redis = new Redis(); $redis->connect("127.0.0.1",6379); //取出所有值 $data=$redis->sMembers('a'); //判断是否存在 if(in_array ($name,$data)){ echo "<script>alert('您已经参加过抽奖了');location='denglu.php';</script>"; }else{ //把用户名 存在SET里 $redis->sAdd('a', $name); //把用户名 和数字存在ZSET里 $redis->zAdd('key',$num,$name); //判断是否到了时间 if($time<$datatime){ echo"<script>alert('还没有到开奖时间');location='shijian.php';</script>"; }else{ $arr=$redis->zRange('key',0,-1,true); //由于取出的值为浮点型所以强制转换为整型 $str=array(); foreach($arr as $k=>$v){ $str[$k]=(int)$v; } // var_dump($str);die; //统计所有值出现的次数 $arr2=array_count_values($str); //定义一个方法 function show($arr2){ foreach ($arr2 as $k=>$v) { if($arr2[$k]==1){ return $k; } } } //调用方法找出最小的不重复的值 $a=show($arr2); //通过这个值找到是哪个用户输入的 foreach($str as $k=>$v){ if($str[$k]==$a){ echo "恭喜用户名为".$k."的用户中奖,他输入的数字为".$a;die; } } } }<?php session_start(); $time=$_SESSION["time"]; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Document</title> </head> <body> <h1>输入最小并且不重复的数字赢大奖</h1> <h2>开奖时间<?php echo $time;?></h2> <form action="day1114.php" method="post"> <table> <tr> <td>用户名</td> <td><input type="text" name="username"/></td> </tr> <tr> <td>你要输入的数字</td> <td><input type="text" name="pwd"/></td> </tr> <tr> <td><input type="submit" value="提交"/></td> </tr> </table> </form> </body> </html><?php header("content-type:text/html;charset=utf-8"); session_start(); $time=$_SESSION["time"]; $time=strtotime("$time"); $time2=time(); $time3=$time-$time2; $time3=date('i分s秒',$time3); ?> <h2>距离开奖还剩<?php echo $time3;?></h2>
一个卡了我一上午的BUG的代码
最新推荐文章于 2024-05-11 21:29:09 发布