⊗ppPmFmChcN 307 of 447 menu

PHP-ում checkbox-ների օգտագործման առանձնահատկությունները

Ենթադրենք մեր ֆորմայում կա միայն checkbox:

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

Ենթադրենք մեր ֆորմայի մշակման կոդը այսպիսի տեսք ունի.

<?php if (!empty($_GET)) { // եթե ֆորման ուղարկվել է if (isset($_GET['flag'])) { // եթե checkbox-ը նշված է echo 'նշված է'; } else { echo 'նշված չէ'; } } ?>

Մեզ սպասվում է խնդիր. եթե checkbox-ը նշված չէ, ապա, քանի որ ֆորմայում checkbox-ից բացի այլ տարրեր չկան, $_GET-ում կլինի դատարկ զանգված: Սա նշանակում է, որ ֆորմայի մշակման կոդում մենք չենք մտնի առաջին if-ի մեջ, որն ստուգում է ֆորմայի ուղարկումը:

Խնդիրը լուծելու համար օգտագործում են հատուկ ընդունելություն. ստեղծում են թաքնված input նույն անունով, ինչ մեր checkbox-ինը: Ընդ որում թաքնված input-ի արժեքը դնում են զրո, իսկ checkbox-ինը՝ մեկ:

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

Այս դեպքում կստացվի հետևյալը. Եթե checkbox-ը նշված չէ, ապա սերվեր կուղարկվի միայն թաքնված input-ի արժեքը: Եթե checkbox-ը նշված է, ապա սերվեր կուղարկվեն երկու արժեքներ մեկ անունով: Բայց, քանի որ checkbox-ի արժեքը կլինի երկրորդ, ապա այն պարզապես կփոխարինի առաջինը:

Այսպիսով, այժմ մեր checkbox-ը կուղարկի սերվեր կամ զրո, կամ մեկ:

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

Օգտագործենք սա մեր ստուգման մեջ.

<?php if (!empty($_GET)) { if ($_GET['flag'] === '1') { echo 'նշված է'; } else { echo 'նշված չէ'; } } ?>

Օգտագործելով checkbox հարցրեք օգտատիրոջից, արդյոք նա արդեն 18 տարեկան է, թե ոչ: Եթե այո, ապա թույլատրեք նրան մուտք կայք, իսկ եթե ոչ՝ ապա մի թույլատրեք:

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել