Izvēlētās vērtības saglabāšana checkbox pēc iesniegšanas PHP
Tagad padarīsim tā, lai checkbox vērtība
saglabātos pēc iesniegšanas. Lai to
izdarītu, pārbaudīsim, vai $_GET['flag']
eksistē (tas ir, forma ir iesniegta)
un ir vienāds ar vienu (tas ir, checkbox ir atzīmēts).
Ja šie divi nosacījumi ir izpildīti, tad izvadīsim
checkbox atribūtu checked:
<form action="" method="GET">
<input type="hidden" name="flag" value="0">
<input
type="checkbox"
name="flag" <?php
if (isset($_GET['flag']) and $_GET['flag'] === '1')
echo 'checked';
?>
>
<input type="submit">
</form>
Pārbaudi var vienkāršot, ja mēs precīzi zinām,
ka slēptais input nosūta 0. Šajā
gadījumā, ja checkbox nav atzīmēts, tad $_GET['flag']
būs '0', bet ja formas
iesniegšana vēl nav notikusi, tad būs null.
Abos šajos gadījumos mums nevajadzētu izvadīt
checked. Un abus šos gadījumus mēs varam
noķert ar funkciju empty. Tādējādi
mēs varam pārbaudīt, vai $_GET['flag']
nav tukšs, un tikai šajā gadījumā izvadīt checked:
<form action="" method="GET">
<input type="hidden" name="flag" value="0">
<input
type="checkbox"
name="flag"
value="1"
<?php if (!empty($_GET['flag'])) echo 'checked' ?>
>
<input type="submit">
</form>
Izveidojiet trīs checkbox, kas saglabās savu vērtību pēc iesniegšanas.