Javascript位置重载没有get周长

Javascript location reload without get perimeter

本文关键字:get 周长 位置 重载 Javascript      更新时间:2023-09-26

如何使" location.reload() "在php文件没有得到周长?

下面是一个例子…

假设我有PHP,在右上方,我有一个注销按钮。

当用户按下该按钮时,PHP将自动重定向到"index.php?logout",然后退出(取消cookie和其他设置),并将( javascript location.reload() )返回主页(登录页面)

我遇到的问题是,当php退出后返回登录页面时,url仍然是"index.php?logout",所以当用户登录回"index.php?logout"页面时,它会自动退出(因为url上的退出周长).

那么我该如何解决这个问题呢?有人知道吗?

我希望你们都能理解我想告诉你们的一切。

谢谢你的阅读…

使用self.location.reload代替location.reload。因为location.reload会重新加载当前页面。你可以简单地使用

 self.location.reload = index.php

或者您可以从url中删除查询参数,如

var url = 'index.php?logout'
url=url.split("?")[0];
location.reload =url

location.reload()用post数据重新加载当前页面,您应该在登录/注销

的情况下使用window.location.href

当用户按下该按钮时,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;

您重定向到登录页面并保存请求登录的页面url,这是index.php?logout,对于重定向,您必须检查外围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(!@header('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存在于返回url中,删除它

我希望它能帮助你