Passing a Message to a Script

If the user submits the form without providing any authentication details, or submits details that are incorrect, we should display the form again with an appropriate error message. We can modify our index.php script to display the login form if a message has been passed to it for display, in addition to the previous check for an empty username or password:

// If no username or password has been entered, or there's a message
// to display, show the login page
if(empty($username) || empty($password) || isset($message) )
{
 // Display the message (if any), and the login form
}
else
{
 // Try to authenticate the user against the database
 ...
 // If unsuccessful, pass an error message and call the form again.
}
?>

Here, we’ve used the empty() function to ensure that the $username and $password variables are not empty, and the isset() function to check whether the $message variable has been initialized. Note that these functions are slightly different: a variable can be initialized (set) to an empty string. Since we set the first two variables earlier in the script, they will always be initialized, so we need to check whether their contents are empty or not. The $message variable will be initialized if a message has been passed to us for display; let’s see how this is done.

To pass nonsensitive information from one script to another, we can create our own GET request by adding a query string to the name of the target script. The query string consists of list ...

Get Learning MySQL now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.