2013-05-30 22 views
1

我怎樣才能使「location.reload()」在PHP文件沒有得到周長?JavaScript位置重新加載沒有得到周邊

下面是一個例子..

比方說,我有PHP,並在右上角,我已經註銷按鈕。

當用戶按下該按鈕,PHP會自動重新定向到「index.php?logout」,並在此之後,我將退出(取消設置的cookie和其他),並返回(javascript location.reload())主頁(登錄頁)

的問題,我有是,當PHP回註銷後登錄頁面,那麼URL仍然是「index.php?logout」,所以當用戶登錄回來「index.php?logout」頁面,它會自動註銷(因?退出對URL周長)..

那麼我該如何解決這個問題呢?任何人有任何想法?

我希望你們都明白我想告訴你所有關於..

感謝您閱讀這個..

回答

1

使用self.location.reload代替location.reload。因爲location.reload重新加載當前頁面。你可以簡單的使用

self.location.reload = index.php 

或者你可以從你的URL中移除查詢放慢參數一樣

​​
+1

謝謝你的例子,但是,location.reload不適合我,但是,location.href爲我..btw工作,感謝分裂函數,它爲我工作.. :) –

+0

歡迎傢伙:-) –

0

您重新定向到登錄頁面,並保存網頁網址進行登錄請求這是index.php?logout重新回到直接存在,如果從返回URL中移除例如

//replace parent::$Patch with your root url like "http://localhost/myapp/" 
if(!parent::$Patch.'admin/login.php'=='http://'.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']){//check if you are in login.php page didn't redirect to login.php 
if([email protected]('Location:'.parent::$Patch.'admin/login.php?url='.rawurlencode(str_replace("logout","",'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'])))){ 
     //if header error echo javaScript code for re-direct 
     ?> 
         <!DOCTYPE HTML> 
         <html> 
         <head> 
         <script language="javascript"> 
          var LoadP = <?php print "'".parent::$Patch.'admin/login.php?url='.rawurlencode(str_replace("logout","",'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']))."'"?>; 
          self.location = LoadP; 
         </script></head></html> 
         <?php 
         } 
         exit(); 

    } 

} 

這個代碼重新定向用戶到登錄頁面,並保持頁面的返回URL必須檢查周邊logout。如果回報內部存在logout URL刪除

我希望它可以幫助你

+0

重定向使用JavaScript通常是一個壞主意,除非不可避免的。這是可以避免的。 – itachi

+0

爲什麼是一個壞主意? –

+0

只是關閉JavaScript ....沒有重定向。 – itachi

0

location.reload()與POST數據重新加載當前頁面,你應該在登錄的情況下使用window.location.href /註銷

0

當用戶按下該按鈕,PHP會自動重新定向到「的index.php?註銷」和>之後,我將退出(取消設置的cookie和其他)和回報(JavaScript的location.reload() >)到主頁(登錄頁面)

所有這些都可以在服務器端實現。

// LOGOUT 
if(isset($_GET['logout'])){ 
//logout code 
} 

header('location: www.yoursite.com/login') //or whatever the url is 
exit; 
+0

我已經想到了這個,但是這個方法也可以,但是我只需要在javascript中做:) –