Complete HTML Form Validation in PHP
In this post, you will learn about HTML form validation using the PHP programming language.
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.
PHP Checking if form has been submitted
First of all, we should check whether the submit button has been clicked by the user or not. We can check this by submitting the button value. If it is empty, then it returns an error message. It is good practice to write other validation codes within this check.
<?php
if(!$_POST['submit']){
print 'Please submit the form.';
}
?>
<form action="">
<input type="submit" name="submit" value="Submit" />
</form>
PHP form 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.';
}
PHP form validation number fields
PHP provides the ctype_digit() method to check if each and every character of text is numeric or not. It returns a boolean value. It returns TRUE if all characters of the string are numeric, otherwise it returns FALSE.
if(!ctype_digit($_POST['age'])) {
print 'Please enter your age in number.';
}
PHP validate email
To validate the email address, it is easiest to use the PHP 'filter_var()' function. It has a predefined range for types of filters that filter the variable with a specified filter. For example,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';
}
PHP radio button validation Code
The radio button can have multiple choices. Here, we have validated the radio button input by storing all the options in array first, and then we have used the 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 the PHP isset() method and the 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.';
}
PHP url validation
To check a valid URL address, in the below code we have used the 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