Home  >  Article  >  php教程  >  PHP Push 服务器端代码

PHP Push 服务器端代码

PHP中文网
PHP中文网Original
2016-05-25 17:04:34991browse

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[&#39;user_id&#39;] = $user_id;
        $where[&#39;time&#39;] = array(&#39;elt&#39;, time() - 1);
        $model = M("Push");
        $data = $model -> where($where) -> find();
        $where[&#39;id&#39;] = $data[&#39;id&#39;];
        //dump($model);
        if ($data) {
            sleep(1);
            $model -> where("id=" . $data[&#39;id&#39;]) -> delete();
            $this -> ajaxReturn($data[&#39;data&#39;], $data[&#39;info&#39;], $data[&#39;status&#39;]);
        } else {
            sleep(2);
        }
    }
    $this -> ajaxReturn(null, "no-data", 0);
}

push客户端

<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>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn