Varuni N R
Varuni N R

Reputation: 802

how to remove a parameter from url on page refresh php

I am sending error values in the url.For example if i have a website named

www.example.com 

and the url for login page is

www.example.com/login.php. 

If the user enters wrong credentials url will be

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

So everytime i refresh url remains

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

How to remove invalid from url on refresh???

Upvotes: 0

Views: 2609

Answers (1)

Sergey Vidusov
Sergey Vidusov

Reputation: 1342

I think that by using the invalid GET variable you try to determine whether or not to display the error message to the user. This isn't really a good way to do so, due to the number of reasons, one of which made you ask this question.

You have a number of options instead, one of which would be using the session variables to store the error message. E.g., if the user login fails, you could store the message in your session:

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

and then on the login.php page you could try and see if it exists:

// ...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...

This is not the perfect way either, but without knowing your application structure it's hard to suggest anything else.

Upvotes: 5

Related Questions