Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pengesahan dalam PHP

Pengesahan dalam PHP

王林
王林asal
2024-08-29 13:08:43710semak imbas

Pengesahan dalam PHP ialah proses di mana kami menyemak sama ada maklumat input dalam pelbagai medan dalam sebarang bentuk seperti teks, kotak semak atau butang radio, dll, yang dikemukakan oleh pengguna akhir dalam borang adalah betul atau tidak menggunakan kod HTML .

IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olok

Mulakan Kursus Pembangunan Perisian Percuma Anda

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

Terdapat 2 jenis pengesahan tersedia dalam PHP:

  1. Pengesahan Bahagian Pelanggan: Pengesahan jenis ini dilakukan pada pelayar web mesin pelanggan.
  2. Pengesahan Bahagian Pelayan: Data pada penyerahan kemudiannya dihantar ke mesin pelayan untuk melakukan semakan pengesahan di sana.

Peraturan untuk Pengesahan dalam PHP

Terdapat peraturan tertentu untuk pengesahan borang dan ia adalah seperti berikut untuk medan berikut:

  • Nama: Ia adalah medan wajib yang datanya hanya mengandungi ruang putih dan huruf.
  • E-mel: Ia juga merupakan medan wajib yang harus mengandungi alamat e-mel yang sah bermakna ia hendaklah dalam format [emel dilindungi].
  • Tapak Web: Ia adalah medan pilihan dan harus mengandungi URL yang sah jika diberikan
  • Ulasan: Ia adalah medan pilihan dan merupakan input teks berbilang baris di mana kita boleh memberikan ayat yang panjang.
  • Jantina: Ia adalah medan wajib dan harus memilih satu jantina daripada perempuan, lelaki dan yang lain.

Jenis Pengesahan dalam PHP

Sekarang mari kita lihat cara untuk mengesahkan pelbagai jenis medan sedemikian.

1. Pengesahan medan teks

Terdapat beberapa medan teks daripada atribut yang dinyatakan di atas seperti nama, e-mel, tapak web dan ulasan. Kod HTML untuk perkara yang sama adalah seperti di bawah:

Kod:

<blockquote>
<p>Name : <input name="name" type="text" /> <br /><br /> E-mail : <input name="email" type="text" /><br /><br /> Website: <input name="website" type="text" /><br /><br /> Comment: <textarea cols="40" name="comment" rows="5"></textarea></p>
</blockquote>

Output:

Pengesahan dalam PHP

Penjelasan kepada atur cara di atas: Di sini kita boleh menyesuaikan nama atribut ini mengikut kehendak kita dengan menggunakan tag pengepala yang berbeza dan juga teg ruang. Kami telah menunjukkan salah satu daripada pilihan format perenggan untuk yang ini di sini.

2. Pengesahan butang radio

Butang radio pada asasnya ialah butang yang mempunyai nilai boolean sama ada benar atau palsu dan ia diwakili oleh jenis kotak bulat. Jika kotak itu dibulatkan bermakna benar dan begitu juga sebaliknya. Mari kita lihat kod HTML untuk melaksanakan perkara yang sama untuk atribut "Jantina" yang disebut di atas.

Kod:

Gender:<br /><br />
<input type="radio" name="gender" value="female">Female<br /><br />
<input type="radio" name="gender" value="male">Male<br /><br />
<input type="radio" name="gender" value="other">Other

Output:

Pengesahan dalam PHP

Penjelasan kepada program di atas: Dengan menggunakan kod ini kami memaparkan 3 pilihan di bawah kategori jantina sebagai lelaki, perempuan dan lain-lain. Pengguna boleh bulatkan pada pilihan yang diperlukan dengan mengklik pada bulatan dan pilihan itu akan disimpan dan disahkan.

3. Pengesahan elemen borang

Kaedah ini digunakan pada penghujung selepas semua butiran yang diperlukan telah diisi untuk menghantar borang. Apabila menggunakan kod HTML ini, data borang apabila diserahkan dihantar dengan kaedah "siaran". Pada asasnya terdapat 2 atribut yang perlu kita tentukan semasa mengesahkan elemen borang: tindakan dan kaedah. Kami boleh menukar atribut HTML tertentu kepada nama entiti masing-masing untuk mengelakkan borang pecah apabila pengguna menyerahkan. "tindakan" menentukan tempat data borang dihantar semasa penyerahan dan "kaedah" mentakrifkan cara data borang diserahkan.

Kod:

<form method="POST"
action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">

Mari kami menyemak keseluruhan bentuk pengesahan dengan menggabungkan semua jenis pengesahan yang berbeza yang kami pelajari di atas:

Kod:

<!DOCTYPE HTML>
<html>
<head>
<style>
.Error {color: #FF0000;}
</style>
</head>
<body>
<?php
// we are defining variables here and setting their default values to zero
$nameError = $emailError = $genderError = $websiteError = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameError = "Name is mandatory";
} else {
$name = test_input($_POST["name"]);
}
if (empty($_POST["email"])) {
$emailError = "Email is mandatory";
} else {
$email = test_input($_POST["email"]);
}
if (empty($_POST["website"])) {
$website = "";
} else {
$website = test_input($_POST["website"]);
}
if (empty($_POST["comment"])) {
$comment = "";
} else {
$comment = test_input($_POST["comment"]);
}
if (empty($_POST["gender"])) {
$genderError = "Gender is mandatory";
} else {
$gender = test_input($_POST["gender"]);
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>PHP Form Validation Example</h2>
<p><span class="Error">* mandatory field</span></p>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Name: <input type="text" name="name">
<span class="Error">* <?php echo $nameError;?></span>
<br><br>
E-mail: <input type="text" name="email">
<span class="Error">* <?php echo $emailError;?></span>
<br><br>
Website: <input type="text" name="website">
<span class="Error"><?php echo $websiteError;?></span>
<br><br>
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
<br><br>
Gender:
<input type="radio" name="gender" value="female">Female
<input type="radio" name="gender" value="male">Male
<input type="radio" name="gender" value="other">Other
<span class="Error">* <?php echo $genderError;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
<?php
echo "<h2>Your Input:</h2>";
echo $name;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>
</body>
</html>

Output:

Pengesahan dalam PHP

Penjelasan kepada program di atas: Dalam contoh di atas, kami telah menggabungkan semua medan berbeza yang tersedia seperti medan teks, butang radio dan juga jenis format e-mel. Output akan dipaparkan dalam bentuk kotak yang akan mengikut spesifikasi yang kami berikan dalam kod HTML. Apabila memasukkan nilai mandatori, perkara yang sama dipaparkan di bawah teks "Butiran yang dimasukkan ialah:". Katakan mana-mana nilai mandatori tidak diberikan maka ia akan membuang mesej ralat selain atribut tertentu yang mengatakan bahawa ia wajib dan perlu diisi.

Kelebihan Pengesahan dalam PHP

  • Dengan menggunakan pengesahan pihak pelanggan, kami boleh menerima maklum balas dengan lebih pantas tanpa perlu mematikan pelayan dan memuat turun halaman HTML lain.
  • Pengesahan pada bahagian pelanggan juga membantu dalam menjimatkan beban pada pelayan dan meningkatkan prestasi.

Kesimpulan

Kami telah melihat dalam tutorial ini cara melakukan pengesahan dalam PHP pada bahagian klien dan betapa pentingnya ia. Ia membantu dalam menjimatkan masa justeru membolehkan lebih lebar jalur untuk menunjukkan kepada pengguna akhir kesilapan mereka dalam mengisi borang yang diberikan. Walau bagaimanapun, pengesahan sisi pelayan juga penting yang dilakukan menggunakan JavaScript, dsb. Oleh itu, akhirnya kita boleh membuat kesimpulan dengan mengatakan bahawa kedua-dua pengesahan sisi pelanggan dan pelayan adalah penting kerana ia saling melengkapi dalam memenuhi tujuan akhir.

Atas ialah kandungan terperinci Pengesahan dalam PHP. 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:nama asas dalam PHPArtikel seterusnya:nama asas dalam PHP