龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

PHP Push 服务器端代码

时间:2014-07-22 14:49来源: 作者: 点击:
分享到:
PHP Push 服务器端代码
PHP Push 服务器端代码
	function server() {
		for ($i = 0, $timeout = 10; $i < $timeout; $i++) {
			if (connection_status() != 0) {
				exit();
			}
			$where = array();
			$user_id = $user_id = get_user_id();
			session_write_close();
			$where['user_id'] = $user_id;
			$where['time'] = array('elt', time() - 1);
			$model = M("Push");
			$data = $model -> where($where) -> find();
			$where['id'] = $data['id'];
			//dump($model);
			if ($data) {
				sleep(1);
				$model -> where("id=" . $data['id']) -> delete();
				$this -> ajaxReturn($data['data'], $data['info'], $data['status']);
			} else {
				sleep(2);
			}
		}
		$this -> ajaxReturn(null, "no-data", 0);
	}

2. [代码]push 客户端     跳至 [1] [2] [全屏预览]

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<meta name="keywords" content="keywords" />
	<meta name="description" content="description" />
	<script type="text/javascript" src="__PUBLIC__/js/jquery.js"></script>
	<script type="text/javascript">
			var flag = true;
			var runing=false;
			push_start();
			function sendPush(url,vars,callback){
				return $.ajax({
					type : "POST",
					url : url,
					data : vars + "&ajax=1",
					dataType : "json",
					success : callback
				});
			}
			function hide_msg($obj){
				runing=true;
				setTimeout(function(){
					$($obj).find("h4:first").remove();
					if($($obj).find("h4:first").length){
						hide_msg($obj);
					}else{
						runing=false;
					}
				},3000)
			}
			function show_msg(info){
				if(info!="no-data"){
					html="<h4><button type=\"button\" class=\"close\" data-dismiss=\"alert\">&times;</button><span>"+info+"</span></h4>"
					$obj=$(".msg",parent.document);
					$obj.prepend(html);
					if (runing==false){
						hide_msg($obj);	
					}					
				}	
			}
			function push_start(){								
				sendPush("{:U(push/server)}","id=1", function(data){
					show_msg(data.info);
					if (flag){
						push_start();
					}
				});
			}

			function push_stop() {
				flag = false;
			}

		</script>
</head>
<body>
</body>
</html>
精彩图集

赞助商链接