2014-05-01 181 views
-1

我有一点的JavaScript,张贴到一个PHP,每秒,它检查一个时间表,基本上返回“刷新”,如果开始时间满足,然后返回刷新时,结束时间得到满足。重新加载页面一次,然后重新加载没有内容变化

如果“刷新”它重新加载显示其假设的页面。

function checkSchedules(){ 
    if(sch_timer) 
    clearInterval(sch_timer) 
$.ajax({ 
    url:'checkSchedule_test.php?mediaID='+mediaIDArray[schCount], 
    type:'GET', 
    complete: function (response) { 

     if(response.responseText == "refresh"){ 
      location.reload(true); 
     }   

    }, 
    error: function() { 
     alert('Sorry there was an error!'); 
    }, 
}) 
sch_timer = setTimeout(checkSchedules,1000); 
schCount = (schCount >= urlArray.length - 1)? -1 : schCount 
++schCount 
} 
在php

if ($current_date>=$startDate && $current_date<=$endDate){ 
    if ($current_time >= $startTime && $current_time <= $endTime){ 
$timeout = $endTime - $current_time; 
if ($current_time >= $startTime && $current_time <= ($startTime+3000)){ 
    echo "refresh"; 
} 
if($timeout<=3000){ 
    echo "refresh"; 
} 
    } 
} 

时开始计时满足它刷新精细

,工程巨大。 然后当结束时间满足时刷新,但内容相同。 如果我点击刷新它工作正常。

我试着重装()方法的不同(document.reload,等...)

有没有人有什么想法?

干杯

+0

你可以这一切都通过JS,你为什么通过PHP检查日期/时间? – cmorrissey

+0

php从数据库中获取设置时间,所以我要么返回时间,并执行数学JS或在PHP中执行所有操作,返回true或false。两者都有相同的结果。 – ajl80

+0

您正在创建一个巨大开销的实例,假设您有1000个用户,每个用户每秒钟都会检查您的网站以进行一些日期/时间计算,现在您的服务器已经被所有这些请求堵塞了。设置一些JSON,其中包含每个项目的开始/结束时间,然后在一段时间内循环遍历它,然后只需调用服务器即可刷新该对象而不是整个页面。 – cmorrissey

回答

0

使用控制台来了解什么是从服务器返回

使用debug()console.log()的了解是从PHP返回......重装脚本是正确的问题将是阿贾克斯期间

+0

它会在结束时触发刷新或警报()。 – ajl80