2012-11-18 47 views
-3

我有每秒更新用戶會話一個的index.php:刷新<body>與jQuery和PHP

[index.php的(前)]

<script type="text/javascript"> 
$(function($) { 
    var refresh = setInterval(function() { 
     $.post('myfolder/reload_info.post.php', { 
      id: <?php echo $_SESSION['id']; ?> 
     }, function(data){ 
      clearInterval(this); 
     }); 
    }, 1000); 
}); 
</script> 

[reload_info.post.php]

(sql query... // $row is the result) 
$_SESSION['name'] = $row->name; 
$_SESSION['mail'] = $row->mail; 
$_SESSION['status'] = $row->stat; 
$_SESSION['cf'] = $row->cf; 

如果數據庫(MySQL)發生任何變化,通常會對使用任何會話的網站的所有功能收費。我想在不重新加載頁面的情況下更新index.php()的主體。

也就是說,如果我打開了index.php文件,並且在編輯文件之間沒有任何內容,我在此之後放置了任何文本,而不必按F5或採用location.reload()。

可能嗎?謝謝。 :)

+1

是什麼在重新加載整個身體的地步?爲什麼不只是你需要改變的部分?我想現在看不到重新加載頁面的好處。 – Brad

+0

在裏面,我只需要'div.container'而已。 –

回答

0

你想要這樣的東西?

<script type="text/javascript"> 
$(function($) { 
var id="<?php echo $_SESSION['id']; ?>"; 
    var refresh = setInterval(function() { 
     $.post('myfolder/reload_info.post.php', { 
      id: id; 
     }, function(data){ 
      clearInterval(this); 
      $('body .container').html(data); 
     }); 
    }, 1000); 
}); 
</script> 

在reload_info.post.php你應該返回的東西...

回聲回聲$ _SESSION [ '身份證'];

+0

replace()是一個真正的函數?! –

+0

不,這消失與所有內容(文本只lorem ipsum),並沒有返回任何東西... –

+0

將更新,據我瞭解,但mixig的PHP和JS是壞主意 –