如何在页面刷新 PHP 上从 URL 中删除参数


how to remove a parameter from url on page refresh php

我在网址中发送错误值。例如,如果我有一个名为

www.example.com 

登录页面的网址是

www.example.com/login.php. 

如果用户输入错误的凭据,url 将是

www.example.com/login.php?invalid. 

所以每次我刷新网址时都会保留

www.example.com/login.php?invalid.

如何在刷新时从 url 中删除无效???

我认为通过使用invalid GET变量,您可以尝试确定是否向用户显示错误消息。由于原因很多,这不是一个好方法,其中一个原因让你问这个问题。

您有许多选项,其中之一是使用会话变量来存储错误消息。 例如,如果用户登录失败,您可以将消息存储在会话中:

if (badLogin()) {
    $_SESSION['errorMessage'] = "Something's wrong";
}

然后在登录.php页面上,您可以尝试查看它是否存在:

// ...your HTML...
if (!empty($_SESSION['errorMessage'])) {
    echo $_SESSION['errorMessage']; // show it to the user
    unset($_SESSION['errorMessage']); // so as not to display it every time
}
// ...your HTML continues...

这也不是完美的方法,但是如果不了解您的应用程序结构,就很难提出其他建议。