我试图显示实时访问者访问(编辑)该网站。下面是我的名为uniquevisitors
的PHP文件。在php文件中,include 'common.php'; //get database connection
$query = "SELECT SUM(uniquevisitors) as uniquevisitors FROM " . $DBPrefix . "currentaccesses";
$params = array();
$db->query($query, $params);
while ($new = $db->fetch())
{
$uniquevisitors = $new['uniquevisitors'];
}
echo "visitors until now: " . $uniquevisitors . "<br>";
显示良好。
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
function updategetTotalVisitors()
{
$('#datashow').load('getTotalVisitors.php');
}
updategetTotalVisitors(); //set the datacount as soon as the page is loaded
setInterval( "updategetTotalVisitors()", 10000 ); //update the datashow every 10 seconds
});
</script>
<p>Visitors until now:</p>
<div id = "datashow"></div>
当我尝试使用以下脚本实现更新和setInterval函数时,我无法使其正常工作。有人给我正确的方向/解决方案吗?
{{1}}
答案 0 :(得分:0)
首先,setInterval
的函数参数必须不加引号且不带括号:
setInterval( updategetTotalVisitors, 10000 );
然后,您必须在updategetTotalVisitors
范围之外声明$(document).ready
并将setInterval
的返回值分配给变量:
<script type="text/javascript">
var repeatFunction;
function updategetTotalVisitors()
{
$('#datashow').load( 'getTotalVisitors.php' );
}
$(document).ready(function()
{
updategetTotalVisitors();
repeatFunction = setInterval( updategetTotalVisitors, 10000 );
});
</script>
上面的脚本适用于我。显然我用假的 getTotalVisitors.php 测试了它,但是你说你的php工作了,所以......