Salut,
Cum gasesc care variabila POST trimisa de formular provine din <input type="checkbox">? Nu stiu name-ul elementului, el exista dar variabilele POST provin dintr-un formular generat pe baza unui array (elementele primesc name valorile din array) si acelasi formular este folosit de mai multe array-uri, dupa caz. Ideea este sa identific variabila, sa-i pun valoarea 1 daca este bifata si s-o salvez in BD. Stiu doar atit ca ea este asociata cimpului concediu din BD. Multumesc.
variabila POST provenita din checkbox
-
- Mesaje:430
variabila POST provenita din checkbox
MarPlo
Mesaje:4343
Salut
Pe partea de server nu ai cum sa identifici daca valorile din POST sunt dintr-un checkbox sau alt element de formular. E de inteles fiindca pot fi trimise si dinamic din javascript, fara a fi de la vreun tip anume de element.
Exista ceva care totusi te poate ajuta in cazul checkbox-ului (sau type="radio"). Daca acel element /checkbox /radio nu are atributul "value", si e bifat, in php va avea valoarea "on".
- Acesta in html (fara 'value'), cand e bifat si trimis la php:
In php vei avea:
Astfel, verifici care variabila $_POST are valoarea "on". Functioneaza daca "on" nu e valoare si la alt tip de element de formular, si nu ai un "radio" fara valoare si bifat.
Altfel nu ai cum sa identifici daca e de la checkbox, decat prin diferite artificii, cum ar fi, cand se creaza form-ul:
- se face un camp "hidden" care sa aibe ca valoare un sir cu numele checkbox-urilor din formular, separate prin virgula; iar in php se va verifica numele fiecarei variabile $_POST cu cele din acel element "hidden".
- sau adaugi la numele checkbox-ului un prefix (chbx_name) prin care in php se va sti ca daca numele incepe cu "chbx_" e checkbox.
Pe partea de server nu ai cum sa identifici daca valorile din POST sunt dintr-un checkbox sau alt element de formular. E de inteles fiindca pot fi trimise si dinamic din javascript, fara a fi de la vreun tip anume de element.
Exista ceva care totusi te poate ajuta in cazul checkbox-ului (sau type="radio"). Daca acel element /checkbox /radio nu are atributul "value", si e bifat, in php va avea valoarea "on".
- Acesta in html (fara 'value'), cand e bifat si trimis la php:
Cod: Selectaţi tot
<input type="checkbox" name="chbx">
Cod: Selectaţi tot
$_POST['chbx'] ='on';
Altfel nu ai cum sa identifici daca e de la checkbox, decat prin diferite artificii, cum ar fi, cand se creaza form-ul:
- se face un camp "hidden" care sa aibe ca valoare un sir cu numele checkbox-urilor din formular, separate prin virgula; iar in php se va verifica numele fiecarei variabile $_POST cu cele din acel element "hidden".
- sau adaugi la numele checkbox-ului un prefix (chbx_name) prin care in php se va sti ca daca numele incepe cu "chbx_" e checkbox.
andras
Mesaje:430
E bine ! M-am agatat de aceasta posibilitate (pe care n-o stiam) si functioneaza!
Subiecte similare
- Eroare de variabila in php 8
PHP - MySQL - XML Primul mesaj
SalutUltimul mesaj
Am trecut la php 8 si imi da eroarea asta
Warning: Undefined variable $page in G:\site\htdocs\system\site\page.php on line 16
in...
Imi mai da eroarea asta
Warning: Undefined array key message
iar eu am asa
$message=$_POST ;
Edit,
rezolvat cu
$message='';
if (isset($_POST...