⊗ppPmFmChcN 307 of 447 menu

Nuansa Penggunaan Kotak Semak dalam PHP

Katakan dalam borang kami hanya terdapat satu kotak semak:

<form action="" method="GET"> <input type="checkbox" name="flag"> <input type="submit"> </form>

Katakan kod pemprosesan borang kami kelihatan seperti ini:

<?php if (!empty($_GET)) { // jika borang telah dihantar if (isset($_GET['flag'])) { // jika kotak semak ditanda echo 'ditanda'; } else { echo 'tidak ditanda'; } } ?>

Kami akan menghadapi masalah - jika kotak semak tidak ditanda, maka, oleh kerana dalam borang tiada elemen lain selain kotak semak, dalam $_GET akan terdapat array kosong. Ini bermakna, dalam kod pemprosesan borang kami tidak akan memasuki if pertama, yang menyemak penghantaran borang.

Untuk menyelesaikan masalah ini, teknik khas digunakan: buat input tersembunyi dengan nama yang sama, seperti kotak semak kami. Dalam kes ini, nilai input tersembunyi diletakkan sebagai sifar, dan kotak semak - satu:

<form action="" method="GET"> <input type="hidden" name="flag" value="0"> <input type="checkbox" name="flag" value="1"> <input type="submit"> </form>

Dalam kes ini, perkara berikut akan berlaku. Jika kotak semak tidak ditanda, maka hanya nilai input tersembunyi akan dihantar ke pelayan. Jika kotak semak ditanda, maka kedua-dua nilai dengan satu nama akan dihantar ke pelayan. Tetapi, oleh kerana nilai kotak semak akan menjadi yang kedua, maka ia hanya akan menindih nilai pertama.

Jadi, sekarang kotak semak kami akan menghantar ke pelayan sama ada sifar atau satu:

<?php var_dump($_GET['flag']); // '0' atau '1' ?>

Gunakan ini dalam semakan kami:

<?php if (!empty($_GET)) { if ($_GET['flag'] === '1') { echo 'ditanda'; } else { echo 'tidak ditanda'; } } ?>

Dengan menggunakan kotak semak, tanya pengguna sama ada dia sudah berumur 18 tahun atau tidak. Jika ya, benarkan dia akses ke laman web, dan jika tidak - jangan benarkan.

Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak