0
나는 내 데이터베이스에 하나의 테이블을 가지고 있습니다.
레코드가 새로운 경우 long pulling
Employee
___________________________________
| Name | City |
___________________________________
| Jack | UK |
___________________________________
| John | Kenya |
___________________________________
및이 테이블에서 값을 가져 오기 위해 select 쿼리를 사용하고 있습니다.
Employee의 선택 데이터를위한 내 sql.php 파일입니다.
<?php
$con=mysqli_connect("localhost","root","","company");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM employee");
while($row = mysqli_fetch_array($result))
{
echo $row['name'] . " " . $row['city'];
}
mysqli_close($con);
?>
지금 내가 이렇게 오래 끌어 시도하고 긴 당기는 간단한 코드입니다 : -
<html>
<head>
<title>BargePoller</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript" charset="utf-8"></script>
<style type="text/css" media="screen">
body{ background:#000;color:#fff;font-size:.9em; }
.msg{ background:#aaa;padding:.2em; border-bottom:1px #000 solid}
.old{ background-color:#246499;}
.new{ background-color:#3B9957;}
.error{ background-color:#992E36;}
</style>
<script type="text/javascript" charset="utf-8">
function addmsg(type, msg){
/* Simple helper to add a div.
type is the name of a CSS class (old/new/error).
msg is the contents of the div */
$("#messages").append(
"<div class='msg "+ type +"'>"+ msg +"</div>"
);
}
function waitForMsg(){
/* This requests the url "msgsrv.php"
When it complete (or errors)*/
$.ajax({
type: "GET",
url: "sql.php",
async: true, /* If set to non-async, browser shows page as "Loading.."*/
cache: false,
timeout:1000, /* Timeout in ms */
success: function(data){ /* called when request to barge.php completes */
addmsg("new", data); /* Add response to a .msg div (with the "new" class)*/
setTimeout(
waitForMsg, /* Request next message */
1000 /* ..after 1 seconds */
);
},
error: function(XMLHttpRequest, textStatus, errorThrown){
addmsg("error", textStatus + " (" + errorThrown + ")");
setTimeout(
waitForMsg, /* Try again after.. */
1000); /* milliseconds (15seconds) */
}
});
};
$(document).ready(function(){
waitForMsg(); /* Start the inital request */
});
</script>
</head>
<body>
<div id="messages">
<div class="msg old">
BargePoll message requester!
</div>
</div>
</body>
</html>
의 작업 완벽하고 아약스 호출 모든 초.
하지만 변경 사항이 테이블에 추가 된 경우 내 페이지의 div를 추가하는 것이 좋습니다.
어떻게해야합니까?
감사합니다.
두 번째 "긴 폴링"은 어떻게 Ajax 요청입니까? 그것은 단지 "폴링"입니다. – nnnnnn