CakePHP Validation

PHPz
Release: 2024-08-29 12:58:04
Original
860 people have browsed it

CakePHP is an open-source tool used to implement dynamic programming applications as well as it provides a different kind of functionality to the developer. Validation is one of the functionalities that is provided by the CakePHP, by using validation we can provide the validation to the arbitrary arrays of data as per our requirement. In CakePHP, we need to build the entities before the data validation in terms of shape and size. Here we also need to consider default entities, these entities will be validated before the conversation of entities. We can also apply validation rules as per our requirements.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

What is CakePHP Validation?

Information approval is a significant piece of any application, as it assists with ensuring that the information in a Model adjusts to the business rules of the application. For instance, you should ensure that passwords are somewhere around eight characters in length, or guarantee that usernames are special. Characterizing approval rules makes structure dealing with a whole lot simpler.

There are various perspectives to the approval cycle. What we’ll cover in this segment is the model side of things. Basically: what happens when you call the save () technique for your model. For more data about how to deal with the showing of approval blunders.

CakePHP Validation Methods

Now let’s see different validation methods in CakePHP as follows.

1. Add

Adds another standard to a field’s standard set. On the off chance that subsequent contention is a cluster, the rules list for the field will be supplanted with second contention and third contention will be overlooked.

Syntax

Add(string $specified field, array|string $specified name,
array|Cake\Validation\ValidationRule $required rule [])
Copy after login

Explanation

In the above syntax, we use the add method with different parameters. In the above syntax specified name is used to define the name of the rule that we need to add. The array is used to define this rule or multiple rules as per requirement and this returns $this.

2. allowEmpty

By using this method, we can allow empty field

Syntax

allowEmpty(string $specified field, boolean|string|callable $whentrue, string|null msgull)
Copy after login

Explanation

In the above syntax, we use the add method with different parameters. In the above syntax specified name is used to define the name of the rule that we need to add. A boolean parameter is used to indicate when we empty we need to allow, here we can also validate in terms of true or false when we perform create or update operation. The message is used to show the message field and this returns $this.

3. Alphanumeric

By using this method, we can add alphanumeric rules to the field as per our requirements.

Syntax

alphanumeric (string $specified field, string|null $Msgnull, string|callable|null $whennull)
Copy after login

Explanation

In the above syntax, we use the alphanumeric method with different parameters. In the above syntax specified name is used to define the name of the rule that we need to add. Adds another standard to a field’s standard set. In the event that subsequent contention is a cluster, the rules list for the field will be supplanted with second contention and third contention will be overlooked and it returns $this.

4. Creditcard

By using this method, we can add credit card rules to the specified field as per requirement.

Syntax

creditCard(string $specified field , string $type'all', string|null $msgnull, string|callable|null $whennull)
Copy after login

Explanation

In the above syntax, we use the credit card method to add the rule with different parameters. The field you need to apply the standard to.

The sort of cards you need to permit. Defaults to ‘all’. You can likewise supply a variety of acknowledged card types, for instance, ‘mastercard’, ‘visa’, ‘amex’.

The mistake message when the standard falls flat. Either ‘make’ or ‘update’ or a callable that profits valid, when the approval rule ought to be applied and it returns $this.

5. Email

By using this method, we can add an email validation rule to the field as per our requirement.

Syntax

Email(string $specified field , boolean $checkMXfalse, string|null $msgnull, string|callable|null, $whennull)
Copy after login

Explanation

By using the above syntax, we can implement the email validation rule. The field you need to apply the standard too.

Regardless of whether to check the MX records.

The blunder message when the standard fizzles.

Either ‘make’ or ‘update’ or a callable that profits valid, when the approval rule ought to be applied.

6. maxLength

By using this method, we can apply string validation to the field.

Syntax

maxLength(string $specified field, integer $max, string|null $msgnull, string|callable|null $whennull)
Copy after login

Explanation

In the above syntax, we use the maxLength method with different parameters. Here the specified field is used to define the field to which we want to apply the rule, max is used to define the maximum length of string, msgnull is used to show an error message when the rule fails.

7. minLength

By using this method, we can apply string validation to the field.

Syntax

minLength(string $specified field, integer $min, string|null $msgnull, string|callable|null $whennull)
Copy after login

Explanation

In the above syntax, we use the minLength method with different parameters. Here the specified field is used to define the field which we want to apply the rule, min is used to define the minimum length of string, msgnull is used to show an error message when the rule fails.

How to Create CakePHP Validation?

Now let’s see how we can create CakePHP validation with examples as follows. First, we need to make the changes in routes.php file as follows.

<?php
use Cake\Http\Middleware\CsrfProtectionMiddleware;
use Cake\Routing\Route\DashedRoute;
use Cake\Routing\RouteBuilder;
$routes->setRouteClass(DashedRoute::class);
$routes->scope('/', function (RouteBuilder $builder) {
$builder->registerMiddleware('csrf', new CsrfProtectionMiddleware([
'httpOnly' => true,
]));
$builder->applyMiddleware('csrf');
//$builder->connect('/pages',['controller'=>'Pages','action'=>'display', 'home']);
$builder->connect('validation',['controller'=>'Valid','action'=>'index']);
$builder->fallbacks();
});
?>
Copy after login

Now create an index.php file and write the following code as follows.

<?php
if($errors) {
foreach($errors as $error)
foreach($error as $mssg)
echo '<font color="red">'.$mssg.'</font><br>';
} else {
echo "There is no errors.";
}
echo $this->Form->create(NULL,array('url'=>'/validation'));
echo $this->Form->control('username of person');
echo $this->Form->control('password');
echo $this->Form->button('Submit');
echo $this->Form->end();
?>
Copy after login

Now execute the above code we will get the following screen as shown below screenshot.

CakePHP Validation

Suppose let’s consider, if we enter only password then it shows username is required as shown in the following screenshot.

CakePHP Validation

Similarly, we can apply validation for username of person filed as shown in the following screenshot as follows.

CakePHP Validation

In this way, we can implement different methods such as to get, post as per our requirement.

Conclusion

We hope from this article you learn more about the CakePHP validation. From the above article, we have taken in the essential idea of the CakePHP validation and we also see the representation and example of the CakePHP validation. From this article, we learned how and when we use the CakePHP validation.

The above is the detailed content of CakePHP Validation. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
source:php
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!