Зачувување на избраната вредност во checkbox по испраќањето во PHP
Ајде сега да направиме така што вредноста
на checkbox-от ќе се зачува по испраќањето. За
ова проверете дали $_GET['flag']
постои (односно има испраќање на форма)
и дали е еднаква на единица (односно checkbox-от е означен).
Ако овие два услови се исполнети, тогаш прикажете
во checkbox-от атрибутот 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>
Проверката може да се поедностави ако сигурно знаеме,
дека скриеното поле испраќа 0. Во таков
случај, ако checkbox-от не е означен, тогаш во $_GET['flag']
ќе има '0', а ако сè уште нема
испраќање на форма, тогаш ќе има null.
Во двата овие случаи не треба да прикажуваме
checked. И двата случаи можеме
да ги фатиме со функцијата empty. На овој начин
можеме да провериме дали $_GET['flag']
не е празно, и само во тој случај да прикажеме 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>
Направете три checkbox-и, кои ќе ги зачувуваат нивните вредности по испраќањето.