每分钟重新加载包含PHP脚本的div

时间:2011-07-29 20:41:55

标签: php jquery scheduled-tasks reload

我的页面有一个div,其中的内容由PHP脚本编写。

 <div id="feastsaint"> <!-- Feast or Saint of the day -->
     <?php 

        if(isset($_COOKIE["datetoday"])) {
           echo $_COOKIE["datetoday"];
        }

        if(isset($_COOKIE["month"]) and isset($_COOKIE["day"]) and isset($_COOKIE["year"])) { 
          $showfeast = file_get_contents('http://feed.evangelizo.org/reader.php?date='.$_COOKIE["year"].$_COOKIE["month"].$_COOKIE["day"].'&type=feast&lang=AM');
          $showliturt = file_get_contents('http://feed.evangelizo.org/reader.php?date='.$_COOKIE["year"].$_COOKIE["month"].$_COOKIE["day"].'&type=liturgic_t&lang=AM');
          $showsaints = file_get_contents('http://feed.evangelizo.org/reader.php?date='.$_COOKIE["year"].$_COOKIE["month"].$_COOKIE["day"].'&type=saint&lang=AM');
          if ( !empty($showfeast) ) {
            echo ' - '.$showfeast;
          }
          else if ( !empty($showliturt) ) {

            $stlit = strpos($showliturt, 'of the');
            if ( $stlit ) {
               $trunclitur = substr($showliturt, $stlit+7);
               echo ' - '.$trunclitur;
            }
            else {
              $stlits = strpos($showliturt, 'aint');
              if ( $stlits ) {
                ;
              }
              else {
               echo ' - '.$showliturt;

              }

            }

          }
          if ( !empty($showsaints) ) {
            echo ' - '.$showsaints;
          }
        } 

        $widfeast = strlen($showfeast);

        $widlitur = strlen($trunclitur);

        $widsaint = strlen($showsaints);

        $widtha = $widfeast + $widsaint;

        $widthb = $widlitur + $widsaint;

        if ($widtha > 240 || $widthb > 240) {
          echo '<span>'.$showsaints.'</span>';
        }

     ?>
 </div> <!-- End Feast or Saint of the day -->

如何告诉HTML页面在当前日期的午夜之后重新加载此div?问题是,我在第二天打开页面的前几次显示的信息已经过时。然后它有当前的信息。我将日期存储在cookie中,然后在日期中获取其他信息。如果我让cookie过期,那么我最终根本就没有任何信息。所以我想尝试自动刷新div。

如何显示一个jquery调用,每隔几个小时重新加载div,显示PHP脚本?

2 个答案:

答案 0 :(得分:1)

PHP代码实际上并不相关。 jQuery load()函数会将生成的HTML从任何PHP页面加载到指定的div

http://api.jquery.com/load/

此代码将每隔3,600,000毫秒(或每小时)将内容重新加载到div中

setInterval(function(){
    $('#divId').load('theContent.php');
}, 3600000);

答案 1 :(得分:0)

您需要设置到午夜的毫秒数。

window.setTimeout(function() {
     $('#myDiv').load('someScript.php');
},milliseconds)