Reputation: 8648
I have the following code that checks if an email address is already registered if a user registers via form, and then sends a PIN reminder.
//check if email already taken
$emailRes = mysqli_query($conn,"SELECT * FROM users WHERE user_email = '{$_POST['srEmail']}'");
if(mysqli_num_rows($emailRes) != 0) {//if email found in table
$emailRec = mysqli_fetch_assoc($emailRes);
?>
Email already registered, would you like a PIN reminder?
<form method="POST" action="">
<input type="submit" name="srSend" value="Click here to get pin reminder" />
<input type="hidden" name="srEmail" value="<?php echo $emailRec['user_email']?>" />
</form>
<?php
exit;
}
At present this then returns a blank page when the submit is complete; how would I add a "Success." message?
Upvotes: 0
Views: 92
Reputation: 1430
Just remove the closing php tag after the query and add this:
echo "Email already registered, would you like a PIN reminder?";
and then add the closing php tag.
This will display a message if the email already exists.
Upvotes: 0
Reputation: 9011
The action attribute of a form specifies where to send the POST request with the input data. Right now it is blank which is not what you want. You need to send that data to another script which can then display whatever content you want.
Example:
Attribute:
action="after_form.php"
after_form.php
<?php
//do form processing
echo "Nice, you sent the form data here!";
You could also send people to the same PHP script, and then send different output for POST statements as indicated by Amal below.
Upvotes: 1