Pengesahan CakePHP

PHPz
PHPzasal
2024-08-29 12:58:04931semak imbas

CakePHP ialah alat sumber terbuka yang digunakan untuk melaksanakan aplikasi pengaturcaraan dinamik serta ia menyediakan jenis fungsi yang berbeza kepada pembangun. Pengesahan adalah salah satu fungsi yang disediakan oleh CakePHP, dengan menggunakan pengesahan kami boleh memberikan pengesahan kepada tatasusunan data sewenang-wenangnya mengikut keperluan kami. Dalam CakePHP, kita perlu membina entiti sebelum pengesahan data dari segi bentuk dan saiz. Di sini kita juga perlu mempertimbangkan entiti lalai, entiti ini akan disahkan sebelum perbualan entiti. Kami juga boleh menggunakan peraturan pengesahan mengikut keperluan kami.

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Apakah Pengesahan CakePHP?

Kelulusan maklumat ialah bahagian penting dalam mana-mana permohonan, kerana ia membantu memastikan maklumat dalam Model menyesuaikan diri dengan peraturan perniagaan permohonan itu. Sebagai contoh, anda harus memastikan bahawa kata laluan adalah sekitar lapan aksara panjangnya, atau menjamin bahawa nama pengguna adalah istimewa. Mencirikan peraturan kelulusan menjadikan struktur berurusan dengan lebih mudah.

Terdapat pelbagai perspektif untuk kitaran kelulusan. Perkara yang akan kami bincangkan dalam segmen ini ialah bahagian model perkara. Pada asasnya: apa yang berlaku apabila anda memanggil teknik simpan () untuk model anda. Untuk mendapatkan lebih banyak data tentang cara menangani kesilapan kelulusan yang ditunjukkan.

Kaedah Pengesahan CakePHP

Sekarang mari kita lihat kaedah pengesahan yang berbeza dalam CakePHP seperti berikut.

1. Tambah

Menambah standard lain pada set standard medan. Sekiranya perbalahan berikutnya adalah kelompok, senarai peraturan untuk medan akan digantikan dengan perbalahan kedua dan perbalahan ketiga akan diabaikan.

Sintaks

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

Penjelasan

Dalam sintaks di atas, kami menggunakan kaedah tambah dengan parameter yang berbeza. Dalam sintaks di atas nama yang ditentukan digunakan untuk menentukan nama peraturan yang perlu kita tambah. Tatasusunan digunakan untuk mentakrifkan peraturan ini atau berbilang peraturan mengikut keperluan dan ini mengembalikan $this.

2. benarkanKosong

Dengan menggunakan kaedah ini, kami boleh membenarkan medan kosong

Sintaks

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

Penjelasan

Dalam sintaks di atas, kami menggunakan kaedah tambah dengan parameter yang berbeza. Dalam sintaks di atas nama yang ditentukan digunakan untuk menentukan nama peraturan yang perlu kita tambah. Parameter boolean digunakan untuk menunjukkan apabila kita mengosongkan kita perlu membenarkan, di sini kita juga boleh mengesahkan dari segi benar atau salah apabila kita melakukan operasi cipta atau kemas kini. Mesej digunakan untuk menunjukkan medan mesej dan ini mengembalikan $this.

3. Abjad angka

Dengan menggunakan kaedah ini, kami boleh menambah peraturan alfanumerik pada medan mengikut keperluan kami.

Sintaks

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

Penjelasan

Dalam sintaks di atas, kami menggunakan kaedah alfanumerik dengan parameter yang berbeza. Dalam sintaks di atas nama yang ditentukan digunakan untuk menentukan nama peraturan yang perlu kita tambah. Menambah standard lain pada set standard medan. Sekiranya perbalahan berikutnya adalah kelompok, senarai peraturan untuk medan akan digantikan dengan perbalahan kedua dan perbalahan ketiga akan diabaikan dan ia mengembalikan $ini.

4. Kad kredit

Dengan menggunakan kaedah ini, kami boleh menambahkan peraturan kad kredit pada medan yang ditentukan mengikut keperluan.

Sintaks

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

Penjelasan

Dalam sintaks di atas, kami menggunakan kaedah kad kredit untuk menambah peraturan dengan parameter yang berbeza. Medan yang anda perlukan untuk menggunakan standard.

Jenis kad yang anda perlu benarkan. Lalai kepada 'semua'. Anda juga boleh membekalkan pelbagai jenis kad yang diiktiraf, contohnya, 'mastercard', 'visa', 'amex'.

Mesej kesilapan apabila standard jatuh rata. Sama ada 'buat' atau 'kemas kini' atau boleh panggil yang mendapat keuntungan sah, apabila peraturan kelulusan sepatutnya digunakan dan ia mengembalikan $ini.

5. E-mel

Dengan menggunakan kaedah ini, kami boleh menambahkan peraturan pengesahan e-mel pada medan mengikut keperluan kami.

Sintaks

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

Penjelasan

Dengan menggunakan sintaks di atas, kami boleh melaksanakan peraturan pengesahan e-mel. Medan yang anda perlukan untuk menggunakan standard juga.

Tidak kira sama ada untuk menyemak rekod MX.

Mesej kesilapan apabila standard gagal.

Sama ada 'buat' atau 'kemas kini' atau boleh panggil yang mendapat keuntungan sah, apabila peraturan kelulusan sepatutnya digunakan.

6. maxLength

Dengan menggunakan kaedah ini, kami boleh menggunakan pengesahan rentetan pada medan.

Sintaks

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

Penjelasan

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)

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();
});
?>

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();
?>

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

Pengesahan CakePHP

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

Pengesahan CakePHP

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

Pengesahan CakePHP

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.

Atas ialah kandungan terperinci Pengesahan CakePHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Penomboran CakePHPArtikel seterusnya:Penomboran CakePHP