Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML] Czy są jakieś ograniczenia w nazwach i wartościach pól formularza ?
Forum PHP.pl > Forum > Przedszkole
jolam
Czy nazwy pól formularzy mogą zawierać dowolne znaki? W tym również polskie ąęółśćżźń questionmark.gif
Czy wartości pól checkbox i innych mogą mieć dowolne znaki?

Jeszcze chciałam się zapytać jakie znaki mogą występować w nazwach identyfikatorów pól formularza? <input id=" i <label for="

pozdrawiam Jola
blade-mrn
Witam,
1. Nazwy pól mogą zawierać dowolne znaki ale generalnie przyjmuje się jakąś zasadę i nazewnictwa aby to ujednolicić. I o ile wiem nie używa się przy tym znaków polskich, specjalnych oraz spacji.
2. Nie wiem co rozumiesz przez "Czy wartości pól checkbox i innych mogą mieć dowolne znaki?" ale jeśli chodzi o checkbox to po wysłaniu formularza otrzymuje on wartość "on" jeśli był zaznaczony.
3. Co do trzeciego pytania patrz pkt. 1
Ale może niech jeszcze wypowiedzą się bardziej doświadczeni programiści.
sadistic_son
Używanie polskich znaków w nazewnictwie pól czy zmiennych nie jest dobrym zwyczajem i powinno być unikane. Tyczy się to $zmiennych, name="" i id="". Nie należy też nazw zaczynać od cyfry, czy znaków, ponieważ późniejsze przerobienie ich na zmienne w php nie powiedzie się.
wNogachSpisz
Poprosze o przykłady sytuacji gdzie polskie znaki w nazwach pól sprawią problem.

To samo w stosunku do nazw identyfikatorów.

http://wortal.php.pl/wortal/artykuly/php/a...ie_proceduralne

"ustawa o ochronie języka każe szerzyć polskość na wszystkich frontach"

biggrin.gif

thek
Piszący przede mną poprzednicy powiedzieli już większość. Dodam od siebie tylko propo tych checkboxów... Moga one przybierać tylko nazwy, ale jako takich wartości nie posiadają. ustawienie opcji selected="selected" sprawia tylko, że jest ona domyślnie zaznaczona i nie przyjmuje wartości podanej w value a podczas przesyłu na serwer dostaje ona jak już wspomniano wartość "On". Brak zaznaczenia wyrzuca ją całkowicie ze zmiennej POST. Tak zresztą jak wszystkiego co nie jest zaznaczone lub jest puste. W pliku który masz ustawiony jako action formularza na starcie wyświetlaj sobie print_r($_POST) a sama zobaczysz co przechodzi i z jakimi wartościami smile.gif Teraz pobaw się w zaznaczanie pól, wpisywanie tam głupot lub pozostawianie ich pustych, zmianę name, id i value w kodzie formularza także. Sprawdzaj co się dzieje po kliknięciu "Wyślij". To Ci pomoże lepiej w zrozumieniu tego niż suche opisy na forum, które możesz brać "na wiarę". Odrobina samodzielności pod tym względem da Ci o wiele więcej niż jakikolwiek post tutaj w temacie.

Jedynie mogę się zgodzić z tym, że powinnaś się stosować do zaleceń kolegów: nie używaj polskich liter i znaków. Może podczas testowania to nie wyjdzie, ale już wynik funkcji eval() na jakiejś nazwie znakowo-liczbowej potrafił by Cię zdziwić. Dlatego używa się z reguły tylko liter i ewentualnie ograniczonej liczby znaków, które nie wywołują kłopotów winksmiley.jpg

EDIT: Drugi akapit także Ciebie tyczy wNogachSpisz... Pobaw się eval() nieco, a zrozumiesz czemu w nazwach pewne zapisy, znaki są unikane i wypracowano pewne standardy zapisu. Nikt nie zabrania stosować, to fakt. Ale są powody by jednak tego nie robić.
jolam
Ale pola input radio i input checkbox mogą mieć poza nazwą zdefiniowane value. i właśnie o to mi chodzi, czy w tej wartości są jakieś ograniczenia odnośnie znaków?

Pozdrawiam serdecznie Jola
thek
Radio musi mieć zdefiniowane value bo po niej rozpoznajesz jakie spośród kilku zostało wybrane. Na podobnej zasadzie co select smile.gif Checkbox może mieć value, ale jest ono nieistotne.
sadistic_son
a prościej mówiąc w value może się zawierać dowolny string: czy to polskie znaki, czy znaki zastrzeżone, czy dowolny kod ASCII.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.