Sammendrag: I denne opplæringen lærer DU HVORDAN DU bruker PHP til å behandle et skjema med en eller flere avkrysningsbokser.
en rask introduksjon til avkrysningselementet
En avkrysningsrute lar deg velge en enkelt verdi for innsending i et skjema. For å opprette en avmerkingsboks bruker du elementet input
med typen checkbox
som følger:
Code language: HTML, XML (xml)
en avmerkingsboks har to tilstander: merket og ikke merket.
hvis du merker av i avmerkingsboksen og sender skjemaet ved hjelp av metoden POST
, vil $_POST
associative array inneholde et element med nøkkelen checkbox_name
og verdien checkbox_value
.
Code language: PHP (php)
men hvis du fjerner merket i avmerkingsboksen og sender skjemaet, vil $_POST
ikke ha noe element med nøkkel checkbox_name
. Det betyr at følgende uttrykk returnerer false
:
Code language: PHP (php)
for å sjekke om en avkrysningsboks er merket, kan du også bruke filter_has_var()
– funksjonen slik:
Code language: JavaScript (javascript)
funksjonen filter_has_var()
returnerer true
hvis checkbox_name
finnes i INPUT_POST
.
en avmerkingsboks har ingen etikett. Derfor bør du alltid bruke en avkrysningsboks med et <label>
– element som dette:
Code language: HTML, XML (xml)
i dette eksemplet er verdien for for
– attributtet for <label>
– elementet det samme som verdien for id
– attributtet i avmerkingsboksen. Når du knytter en etikett til en avmerkingsboks, kan du klikke på etiketten for å merke av eller fjerne merket for avmerkingsboksen.
En annen måte å knytte en avmerkingsboks med en etikett på, er å plassere avmerkingsboksen inne i etiketten slik:
Code language: HTML, XML (xml)
I dette tilfellet trenger du ikke å angi id
for avmerkingsboksen og for
– attributtet for etiketten.
et enkelt PHP-avkrysningseksempel
vi lager et enkelt skjema med en avkrysningsrute og en send-knapp.
opprett først følgende katalog-og filstruktur:
Code language: plaintext (plaintext)
Fil | Katalog | Beskrivelse |
---|---|---|
indeks.php | . | Inneholder hovedlogikken som laster får.php eller post.php avhengig AV HTTP-forespørselsmetoden |
topptekst.php | inc | Inneholder header-koden |
bunntekst.php | inc | Inneholder bunntekstkoden |
få.php | inc | Inneholder koden for å vise et skjema med EN avkrysningsboks når HTTP-forespørselen ER GET. |
innlegg.php | inc | Inneholder koden for håndtering AV postforespørsel |
.htaccess | inc | Forhindre direkte tilgang til filene i inc-katalogen |
stil.css | css | Inneholder CSS-koden |
indeks.php
For Det Andre legger du til følgende kode i filen index.php
:
Code language: PHP (php)
index.php
laster skjemaet fra get.php
– filen hvis HTTP-forespørselsmetoden ER GET. Og det laster post.php
– filen hvis skjemaet er sendt inn.
variabelen $errors
brukes til å lagre feilmeldinger.
topptekst.php
Tredje, plasser følgende kode til filen header.php
:
Code language: HTML, XML (xml)
bunntekst.php
For Det Fjerde inneholder filen footer.php
de omsluttende kodene som svarer til åpningskodene fra filen header.php
:
Code language: HTML, XML (xml)
få.php
Femte, opprett et skjema i filen get.php
:
Code language: PHP (php)
innlegg.php
Sjette, legg til følgende kode i filen post.php
for å rense og validere skjemadata:
Code language: PHP (php)
Sammendrag
- Bruk
isset()
ellerfilter_has_var()
For å sjekke om det er merket av for en avmerkingsboks.