2017-02-27 30 views
2

我有一個代碼可以編輯頁面中的內容並將我重定向到該頁面。它成功地將我重定向到該頁面,但不更新內容。我必須按F5,這樣頁面纔會刷新並更新。PHP:爲什麼頁面在使用重定向時沒有得到更新

這是我使用

if (mysqli_multi_query($con,$sql_pcr)){ 
    header("location:http://".$_SERVER['HTTP_HOST'].'/cert/forms/dashboards/dashboard-edit-pcr.php'); 

} 

重定向我也試過這種

if (mysqli_multi_query($con,$sql_pcr)){ 
    ?> 
    <script type="text/javascript"> 
    window.location.href = '/cert/forms/dashboards/dashboard-edit-pcr.php'; 
    </script> 
    <?php 
} 

但同樣的結果。我不認爲錯誤是從編輯因爲當我按F5它得到更新。

編輯:我有注意到的東西。一些數據更新不刷新,但仍有一些需要手動刷新

有沒有人知道爲什麼會發生這種情況?以及如何解決這個問題? 在此先感謝。

+0

你需要顯示更多的代碼,什麼是實際上不工作...... –

+0

你使用的是什麼rdbms? (MS SQL,MYSQL ..?) – Taki

+0

@NijrajGelani抱歉,我不知道在這裏添加什麼代碼。它會成功更新數據,但我必須按F5鍵。如果您不按F5,內容將不會更新。從我所知道的,如果你將被重定向到一個頁面,該頁面將自動刷新,但在我的情況下,它不只是像你只需按下後退按鈕。 –

回答

1

可能是cache問題,請嘗試:
header("Cache-Control: no-cache, must-revalidate"); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
重定向之前。

+0

我應該在哪裏放?正好在'if'語句中的頭部(位置)之上? –

+0

yup,'if'和'header'之間 – Taki

+0

仍然不起作用。但我注意到了一些事情。一些數據被更新,但其他數據需要手動刷新。 –

0

設置重定向後立即exit();正常,除非您有其他特殊需求。它也可能有助於確保位置中的「L」是大寫字母,冒號後面有一個空格。

<?php 
header("Location: http://www.example.com/"); /* Redirect browser */ 

/* Make sure that code below does not get executed when we redirect. */ 
exit; 
?> 
+0

對不起老兄..還是不行。但感謝幫助。 –

相關問題