2014-11-24 2 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는, 기존의 항목을 보여줍니다.

지금 나는 알고 싶다, 나는 자동으로 fileB.php

에서 header('Location: fileA.php'); 후 fileA.php를 새로 고칠 수있는 방법을 이미 같은 것들을 시도

:

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

그러나 웹 사이트가 도착 그들과 함께 당신은 PHP와 함께 할 수

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

죄송합니다.하지만 필요한 것이 확실하지 않습니다. 사용자가 열어 놓은 PAG가 있습니다. 그런 다음 그는 뭔가를하고 db의 값을 변경 한 다음 페이지를 새로 고치시겠습니까? 사용자가 동일하면 ajax success 함수 (예) –

+1

에서 exit()를 사용해야합니다. 헤더 후 –

+0

빠른 답변을 주셔서 감사합니다 @ MarcoMura 정확하게, 나는 db의 값을 변경 한 후 페이지를 새로 고침하고 싶습니다. 그리고 네, 사용자가 동일합니다, 당신은 또한 PHP 솔루션을 알고 있습니까 아니면 아약스와 함께 실현할 수 있습니까? – joh3

답변

0

:하십시오 무한대 상쾌 루프로, 또한 내가 전에 경우 문을 사용하는 경우

header("Refresh:0"); 

그것은 현재 페이지를 새로 고침, 당신은 다른 페이지로 리디렉션해야하는 경우, 사용은 다음

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

그러나 만약 내가 헤더 ("새로 고침 : 0"); 그리고 같은 페이지에 머물고 싶다면 무한대의 reload-loop로 끝납니다. – joh3

0

만 현재 페이지를 새로 고침해야하는 경우가 header("Refresh:0")를 사용할 수 있습니다. 특정 페이지를 새로 고치려면 다른 페이지 ($ targeturl)로 리디렉션하려는 경우 header("Refresh:0,url:$targeturl")을 사용해야합니다. n 초 후에 페이지를 새로 고치기 위해 header("Refresh:n");을 사용할 수도 있습니다.