首页 >后端开发 >php教程 >PHP滚动抽奖代码

PHP滚动抽奖代码

不言
不言原创
2018-04-26 09:17:112300浏览


这篇文章介绍的内容是关于PHP滚动抽奖代码,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

页面:

 

<table style="width: 100%"   cellpadding="2" cellspacing="1" border="0">
		<colgroup>
			<col style="width: 30%"/>
			<col style="width: 70%"/>
		</colgroup>
		<tr>
			<td colspan="2" style="text-align: center">
				<br>
			</td>
		</tr>
		<tr style="display: none;" id="content" >
			<td colspan="2" style="font-size:40px;text-align: center;">
				<p  id="roll" style="width:100%;height:50%;font-weight: bold;margin-top:7.1%">

				</p>
			</td>
		</tr>
		<tr id="imgbut">
			<td colspan="2" style="text-align: center" >
				<p style="height: 50%">
					<img src="/oa/public/css/img/prize.png" id="start" style="width:50%;height:360px">
				</p>
			</td>
		</tr>
</table>

js代码:


<script type="text/javascript">
	$(function(){
		var _gogo;
		var start_btn = $("#start");
		start_btn.click(function(){
			time=0;
			$.getJSON(&#39;/oa/public/index.php/staffinfo/question/getdata/&#39;,function(json){
				if(json){
					var obj = eval(json);//将JSON字符串转化为对象
					var len = obj[&#39;ids&#39;].length;
					_gogo = setInterval(function(){
						var numrand = getRandomArrayElements(obj[&#39;ids&#39;],5);//获取随机数
						var text=&#39;&#39;;
						time+=1;
						for (var i=0;i<numrand.length;i++)
						{
							text+=&#39;<span class="realname" style="margin-left: 25%;float: left;color: 2a475c;">&#39;+obj[&#39;question&#39;][numrand[i]][&#39;realname&#39;]+&#39;</span><span class="phone" style="margin-right: 25%; float: right;color: orangered;">    &#39;+obj[&#39;question&#39;][numrand[i]][&#39;phone&#39;]+"</span><br><br>"
						}
						$("#roll").html(text);
						if(time>500){
							clearInterval(_gogo);
						}
					},1); //每隔0.1秒执行一次
					start_btn.hide();
					$("#content").css(&#39;display&#39;,&#39;&#39;);
				}else{
					$("#roll").html(&#39;系统找不到数据源,请先导入数据。&#39;);
				}
			});
		});
	});
	function getRandomArrayElements(arr, count) {
		var shuffled = arr.slice(0), i = arr.length, min = i - count, temp, index;
		while (i-- > min) {
			index = Math.floor((i + 1) * Math.random());
			temp = shuffled[index];
			shuffled[index] = shuffled[i];
			shuffled[i] = temp;
		}
		return shuffled.slice(min);
	}

</script>

控制器:

 

public function tvshowAction(){
		$prize = $this->_request->get(&#39;prize&#39;);
		$this->view->prize=$prize;
	}
public  function getdataAction() {
		global $db;
		$ids = $db->fetchCol(&#39;SELECT id FROM oa_user_question WHERE id IN (SELECT min(id) FROM oa_user_question GROUP BY phone) and is_show=1; &#39;);
		$questions = $db->fetchAll(&#39;select * from oa_user_question where is_show=1&#39;);
		$arr=array();
		foreach($questions as $question){
			$question[&#39;realname&#39;]=mb_strlen($question[&#39;realname&#39;])>8?(substr($question[&#39;realname&#39;],0,8).&#39;...&#39;):$question[&#39;realname&#39;];
			$question[&#39;realname&#39;]=iconv(&#39;gbk&#39;, &#39;utf-8&#39;, $question[&#39;realname&#39;]);
			foreach($ids as $id){
				if($question[&#39;id&#39;]==$id){
					$arr[$id]=$question;
				}
			}
		}
		$result=array(
			&#39;ids&#39;=>$ids,
			&#39;question&#39;=>$arr
		);
		echo json_encode($result );
		die;
	}

相关推荐:

PHP滚动日志的代码实现

以上是PHP滚动抽奖代码的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn