2014-11-24 139 views
0

我的代碼看起來像這樣。PHP一次加載網站

fileA.php:

Item stored in DB: <?php echo $stored_item; ?> //displays the last selected item 

<form action="fileB.php" method="post" type="submit"> 
     <input type="hidden" name="item" value="itemA"> 
    <button>Save</button></li> 
</form> 
<form action="fileB.php" method="post" type="submit"> 
     <input type="hidden" name="item" value="itemB"> 
    <button>Save</button></li> 
</form> 

fileB.php:

changeItem(); ... //Changes the entries in the database, works correctly 
header('Location: fileA.php'); 

現在項目已在數據庫中更改,但$ stored_item顯示舊項,直到我重新加載頁面。

現在我想知道,我怎麼能header('Location: fileA.php');從fileB.php

後自動刷新fileA.php

我已經嘗試過喜歡的東西:

echo '<script>window.location.reload();</script>'; 
header("Refresh:0"); 

但隨着他們的網站得到成無限刷新環,另外,如果我使用if語句前:

if(isset($_POST)){ 
echo '<script>window.location.reload();</script>'; 
unset($_POST);} 
+0

對不起,但我不確定您需要什麼。你有一個用戶打開的pag A.然後他做了一些事情,它改變了數據庫的價值,然後你想刷新頁面?如果用戶是相同的,你可以使用ajax成功函數(例如) – 2014-11-24 10:38:59

+1

你必須使用exit();在標題 – 2014-11-24 10:39:44

+0

感謝您的快速回答 @MarcoMura完全,我想在更改數據庫中的值後刷新頁面。是的,用戶是一樣的,你是否也知道一個php解決方案,還是隻能用ajax實現? – joh3 2014-11-24 10:47:27

回答

0

你可以用PHP做到這一點:

header("Refresh:0"); 

它刷新當前頁面,如果你需要將其重定向到另一頁,使用下列內容:

header("Refresh:0; url=page2.php"); 
+0

但是如果我使用 標題(「Refresh:0」); 並且我想保持在同一頁面上,那麼它會以無限的重載循環結束 – joh3 2014-11-24 11:08:47

0

,如果你只需要刷新當前頁面你可以使用header("Refresh:0")。 如果你想刷新特定的頁面,你需要使用header("Refresh:0,url:$targeturl"),如果你想在其他頁面($ targeturl)上重定向。您也可以使用header("Refresh:n");在第n秒後刷新頁面