Cum să obțineți casetele de selectare neetichetate

intrare

Dacă trimiteți datele formularului HTML pe server, uneori este necesar să știți căror casete de marcaj au fost marcate și care nu sunt.

Toți artiștii de machiaj știu că nu sunt bifați casetele de selectare, nu treceți prin formular. De exemplu, un câmp de text gol va fi trimis, doar valoarea va fi goală. Caseta bifată va întoarce valoarea "On", iar dacă este specificat atributul "value", valoarea acestui atribut, care nu este marcată, nu va fi trimisă.







Uneori, depinde de tine să știi dacă caseta de selectare a fost bifată sau nu.

în DBMS există o tabelă - mărfuri în care există un câmp marcat pentru ștergere (markdelete), care are 2 valori: 0 - dacă mărfurile nu sunt marcate pentru ștergere, 1 - dacă sunt marcate.

Afișați o listă de produse cu posibilitatea de a marca fiecare articol pentru ștergere, precum și a elimina eticheta.

În dreptul fiecărei înregistrări, afișați caseta de bifare în numele căreia va fi stocat ID-ul înregistrării produsului (de exemplu: bunuri_1, bunuri_2, bunuri_258 etc.) după afișarea listei, faceți clic pe buton, , dar marcate ca 1.

Aceasta este versiunea standard, doar căsuțele de selectare bifate vor fi trimise în cerere și dacă, de exemplu, dorim deja să eliminăm casetele bifate, atunci nu știm dacă este marcată sau nu. Deoarece nu putem afla valoarea căsuței necontrolate, trebuie să folosim un câmp suplimentar pentru fiecare casetă de selectare, care poate trimite orice valori, chiar și cele goale. Un câmp de tip ascuns () este potrivit pentru noi.







Soluție cu câmp ascuns

Când faceți clic pe caseta de validare, datele vor fi transferate în câmpul ascuns corespunzător și vor fi setate valorile din acesta: 1 - dacă este bifată caseta de selectare și 2 - dacă nu este bifată. Fiecare casetă de selectare trebuie să adauge un eveniment.


televizor


caiet


Centrul de muzică


Monitor


După cum puteți vedea, aspectul formularului nu sa schimbat, dar când trimiteți datele formularului, puteți afla dacă bifați caseta de selectare sau nu, datorită câmpului ascuns.

După trimiterea datelor, este foarte ușor să le procesați. După cum se spune că principalele date pe care trebuie să le obții, restul este chestiunea tehnologiei.

Un exemplu de prelucrare a datelor în PHP

dacă ($ _SERVER ['REQUEST_METHOD'] == 'POST')
foreach ($ _POST ca $ post_key => $ post_value)
dacă (preg_match ('/ ^ (mărfuri _) ([0-9] +) $ /'. $ post_key. $ matches))
$ id = $ meciuri [2];
ecou 'id:'. id id. ' — “. $ post_value. '
„;
>
>

concluzie

Descărcați eșantion







Trimiteți-le prietenilor: