While Validating an HTML form the client-side validation is not only enough. Since our web application allows outsiders to enter data, server-side form validation is also required for additional security.
Here, we are going to see how to validate a form using PHP. We have a registration form containing name, password, email and gender fields. All the fields are mandatory and should not be empty.
The email should be in the correct format. We are going to check these validations on the server-side.
PHP provides empty() function to check a variable is empty. We are using this function to check if all the text fields are empty or not. We are using isset() to check whether the gender radio button is checked or not.
We are validating email format by using PHP filter_var() function. The code is,
<?php
foreach ($_POST as $key => $value) {
if (empty($_POST[$key])) {
$message = ucwords($key) . " field is required";
break;
}
}
/* Validation to ensure gender is selected */
if (! isset($_POST["gender"])) {
$message = " Gender field is required";
}
/* Validation to ensure about if the checkbox is checked or not */
if (! isset($_POST["terms"])) {
$message = " Check the box to accept Terms and conditions";
}
/* Validation about the right format of user email */
if (! isset($message)) {
if (! filter_var($_POST["userEmail"], FILTER_VALIDATE_EMAIL)) {
$message = "Invalid UserEmail";
}
}
?>
Once the form contains invalid data then this code pre-populates the form with invalid data and display validation errors.
<tr class="tablerow">
<td align="right">User Type</td>
<td><select name="userType">
<option value="">--Select--</option>
<option value="Member"
<?php if(isset($_POST['userType']) && $_POST['userType']=="Member") { ?>
selected <?php } ?>>Member</option>
<option value="Premium User"
<?php if(isset($_POST['userType']) && $_POST['userType']=="Premium User") { ?>
selected <?php } ?>>Premium User</option>
</select></td>
</tr>
...
<tr class="tablerow">
<td align="right">Address</td>
<td><textarea rows="3" cols="17" name="userAddress"><?php if(isset($_POST['userAddress'])) echo $_POST['userAddress']; ?></textarea></td>
</tr>
...
<tr class="tablerow">
<td align="right">Gender</td>
<td><input type="radio" name="gender" value="Male"
<?php if(isset($_POST['gender']) && $_POST['gender']=="Male") { ?>
checked <?php } ?>> Male <input type="radio" name="gender"
value="Female"
<?php if(isset($_POST['gender']) && $_POST['gender']=="Female") { ?>
checked <?php } ?>> Female</td>
</tr>
<tr class="tablerow">
<td align="right"></td>
<td><input type="checkbox" name="terms"> I accept Terms and Conditions</td>
</tr>
Nice validation
Thank you so much Vincy, you made my day, mwaaaaah
Hello, How do you proceed to export to csv file?
Hi Jan,
Try this https://phppot.com/php/how-to-handle-csv-with-php-read-write-import-export-with-database/