shrnutí: v tomto tutoriálu se dozvíte, jak používat PHP ke zpracování formuláře s jedním nebo více zaškrtávacími políčky.
rychlý úvod do prvku zaškrtávacího políčka
zaškrtávací políčko umožňuje vybrat jednu hodnotu pro odeslání ve formuláři. Chcete-li vytvořit zaškrtávací políčko, použijte prvek input s typem checkbox následujícím způsobem:
Code language: HTML, XML (xml)
zaškrtávací políčko má dva stavy: zaškrtnuté a nezaškrtnuté.
pokud zaškrtnete políčko a odešlete formulář pomocí metody POST, $_POST asociativní pole bude obsahovat prvek, jehož klíč je checkbox_name a hodnota je checkbox_value.
Code language: PHP (php)
pokud však zrušíte zaškrtnutí políčka a odešlete formulář, $_POST nebude mít žádný prvek s klíčem checkbox_name. To znamená, že se vrací následující výrazfalse:
Code language: PHP (php)
Chcete-li zkontrolovat, zda je zaškrtnuto políčko, můžete také použít tuto funkci filter_has_var() :
Code language: JavaScript (javascript)
funkce filter_has_var() vrací true, pokud checkbox_name existuje v INPUT_POST.
zaškrtávací políčko nemá žádný štítek. Proto byste měli vždy používat zaškrtávací políčko s <label> prvkem, jako je tento:
Code language: HTML, XML (xml)
v tomto příkladu je hodnota atributu for prvku <label> stejná jako hodnota atributu id zaškrtávacího políčka. Když přidružíte štítek k zaškrtávacímu políčku, můžete klepnutím na štítek zaškrtnout nebo zrušit zaškrtnutí políčka.
dalším způsobem, jak přiřadit zaškrtávací políčko ke štítku, je umístit zaškrtávací políčko do štítku takto:
Code language: HTML, XML (xml)
v tomto případě není nutné zadávat zaškrtávací políčko id a atribut for pro štítek.
jednoduchý příklad zaškrtávacího políčka PHP
vytvoříme jednoduchý formulář s jedním zaškrtávacím políčkem a tlačítkem odeslat.
nejprve vytvořte následující strukturu adresářů a souborů:
Code language: plaintext (plaintext)
| soubor | adresář | popis |
|---|---|---|
| index.php | . | obsahuje hlavní logiku, kterou načte.php nebo příspěvek.php v závislosti na metodě požadavku HTTP |
| hlavička.php | inc | obsahuje kód záhlaví |
| zápatí.php | inc | obsahuje zápatí kód |
| jdi.php | inc | obsahuje kód pro zobrazení formuláře se zaškrtávacím políčkem při požadavku HTTP GET. |
| pošta.php | inc | obsahuje kód pro zpracování POST požadavku |
| .htaccess | inc | zabránit přímému přístupu k souborům v adresáři inc |
| styl.css | css | obsahuje CSS kód |
index.php
za druhé přidejte do souboru index.php následující kód:
Code language: PHP (php)
index.php načte formulář ze souboru get.php, pokud je metoda požadavku HTTP GET. A načte soubor post.php, pokud je formulář odeslán.
proměnná $errors se používá k ukládání chybových zpráv.
hlavička.php
za třetí vložte do souboru header.php následující kód:
Code language: HTML, XML (xml)
zápatí.php
za čtvrté, soubor footer.php obsahuje uzavírací značky odpovídající úvodním značkám ze souboru header.php :
Code language: HTML, XML (xml)
jdi.php
pátý, vytvořte formulář v souboru get.php :
Code language: PHP (php)
pošta.php
šesté, přidejte následující kód do souboru post.php, abyste dezinfikovali a ověřili data formuláře:
Code language: PHP (php)
souhrn
- pomocí
isset()nebofilter_has_var()zkontrolujte, zda je zaškrtnuto políčko nebo ne.