Complete HTML Form Validation in PHP
In this article, you will learn to complete an HTML form validation using PHP. It is important to validate the form data submitted by users because it may contain some malicious values that can harm your software. Form validation also helps the user to provide input in the correct format. HTML has several types of input fields, the same validation code cannot be applied to all. So, here you will learn how to validate different types of HTML input fields one by one using PHP.

Check form is submitted or not
First of all, we should check whether the submit button has been clicked by the user or not. We can check this by submitting button value. If it is empty, then it returns an error message. It is good practice to write other validation code within this check.
<?php
if(!$_POST['submit']){
print 'Please submit the form.';
}
?>
<form action="">
<input type="submit" name="submit" value="Submit" />
</form>
HTML required field validation
We can check all the required fields validation using PHP strlen() or isset() methods. The strlen() method checks the length of a given string, if it is null, then the required field is empty, and the isset() method checks whether or not the variable has set some value. If it returns NULL, it means the required field is empty.
if (!strlen($_POST['name'])) {
print 'Please enter your name.';
}
OR
if(!(isset($_POST['name']))) {
print 'Please enter your name.';
}
Validate input type numbers in HTML
PHP provides ctype_digit() method to check each and every character of text are numeric or not. It returns a boolean value. It returns TRUE if all characters of the string are numeric otherwise return FALSE.
if(!ctype_digit($_POST['age'])) {
print 'Please enter your age in number.';
}
HTML Email Address Validation
To validate the email address, it is easiest to use PHP 'filter_var()' function. It has a predefined range for types of filter that filters the variable with a specified filter. Like, FILTER_VALIDATE_EMAIL is used to validate the email address.
$email = $_POST['email'];
if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo 'Please enter valid email address';
}
HTML Radio button validation
The radio button can have multiple choices. Here, we have validated the radio button input by storing all the options in an array first, then we have used array_key_exists() method for input validation. It checks whether the selected radio button value is present inside the array or not.
$choices = array('red' => 'Red Balloons',
'yellow' => 'Yellow Wall',
'green' => 'Green Leaves');
foreach($choices as $key => $choice) {
echo " $choice \n";
}
// validating the radio button submission
if(!array_key_exists($_POST['color'], $choices)) {
echo "Please select a valid color.";
}
HTML Checkbox validation
To validate the checkbox, we have used PHP isset() method and equals to (==) operator.
echo "<input type='checkbox' name='conditions' value='yes'/> Accept terms and conditions";
// validating the checkbox
if(isset($_POST['conditions'])) {
if($_POST['conditions'] == 'yes') {
print 'Conditions accepted';
} else {
$subscribed = false;
print 'Invalid checkbox value submitted.';
}
} else {
// No value was submitted
print 'Please accept the terms and conditions.';
}
HTML URL validation
To check a valid URL address, in the below code we have used PHP 'filter_var()' method. It has a predefined 'FILTER_VALIDATE_URL' option to check whether the URL is in a valid format or not.
$url = $_POST['url'];
if(!filter_var($url, FILTER_VALIDATE_URL)) {
echo 'Please enter valid URL address.';
}
Related Articles
PHP remove last character from stringPHP code to send email using SMTP
PHP Server Side Form Validation
How to get data from XML file in PHP
File Upload Validation in PHP
PHP sanitize input for MySQL
PHP random quote generator
PHP String Contains
PHP calculate percentage of total
PHP Fix: invalid argument supplied for foreach
Locking files with flock()
How to display PDF file in PHP from database
How to read CSV file in PHP and store in MySQL
Create And Download Word Document in PHP
PHP SplFileObject Standard Library
Simple File Upload Script in PHP
Sending form data to an email using PHP
Recover forgot password using PHP and MySQL
Php file based authentication
Simple PHP File Cache
How to get current directory, filename and code line number in PHP