Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
pluto-ppes
Člen
Avatar
pluto-ppes:15.4.2015 13:27

Ahoj,
vytvářím objednávkový formulář a chtěl bych využít v elementu input atribut pattern. Rád bych se tu poradit jaká pravidla jsou vhodná pro jednotlivá pole.

Jméno: pattern="[a-žA-Ž]{2,13}"
Příjmení: pattern="[a-žA-Ž]{2,20}"
Telefon: pattern="[0-9]{9}"
Email: pattern="^[^.]+(\­.[^.]+)*@([^.]+[­.])+[a-z]{2,3}$"
Kontrola emailu: pattern="^[^.]+(\­.[^.]+)*@([^.]+[­.])+[a-z]{2,3}$"
Ulice: pattern="[a-žA-Ž0-9%a-žA-Ž\./ ]+[a-žA-Ž0-9%a-žA-Ž0-9 ]{1,26}"
Číslo popisné: pattern="[0-9%/ ]*[0-9]{1,10}"
PSČ: pattern="[0-9]{5}"
Město: pattern="[a-žA-Ž ]+[a-žA-Ž]{1,21}"

Děkuji za odpovědi.

 
Odpovědět
15.4.2015 13:27
Avatar
Odpovídá na pluto-ppes
Michal Žůrek - misaz:15.4.2015 14:18

hned první je špatně. A-Ž se bere podle ASCII a v ASCII jsou znaky s diakritikou rozházené. Resp. dokonce tam ani nejsou, ale rozšířené sady je dodávají.

 
Nahoru Odpovědět
15.4.2015 14:18
Avatar
pluto-ppes
Člen
Avatar
Odpovídá na Michal Žůrek - misaz
pluto-ppes:15.4.2015 14:51

Proto bych se právě chtěl poradit s místníma GURU, jak elegantně na to.

Při vytváření vlákna jsem dal dohromady pár pravidel, aby bylo lépe nad čím diskutovat.

 
Nahoru Odpovědět
15.4.2015 14:51
Avatar
Vladislav Domin:15.4.2015 18:50

Co ak si bude objednavat nieco Rus alebo Cinan? :D

 
Nahoru Odpovědět
15.4.2015 18:50
Avatar
Tomáš123
Člen
Avatar
Odpovídá na pluto-ppes
Tomáš123:16.4.2015 21:35

Prečo to neoveruješ na strane servera pomocou PHP? HTML kód môže hocikto editovať. Telefónne číslo má minimálne 10 znakov a môže obsahovať aj +, čo nepovoľuješ. Ulicu, mesto a emaily sú zbytočne dlhé. Stačí polovica.

Inak, sú pravidlá iné ako pri regulárnych výrazoch v PHP? Zdá sa mi, že symboly + a * používaš trochu zle, ale nepoznám HTML syntax (ak nejaká existuje)...

Nahoru Odpovědět
16.4.2015 21:35
Keby nebolo Internetu Exploreru, nebolo by dnešného internetu.
Avatar
Michal Šmahel:16.4.2015 21:59

Pokud už chceš využívat ověření na straně klienta (přes HTML či JS), musíš stejně i na straně serveru.
Jak již zmínil Tomáš123, HTML i JS jdou upravit a pak ti to je nanic.
Pokud to budeš mít na klientovi i na serveru, ušetříš výkon serveru (malinko), protože pokud to neprojde na klientovi, server to nezatěžuje.
Znaky A-Ž určitě ne, stačí A-Z a a-z a potřebné ručně. (Psal ti to už Michal Žůrek - misaz)

Nahoru Odpovědět
16.4.2015 21:59
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Avatar
pluto-ppes
Člen
Avatar
pluto-ppes:17.4.2015 12:04

Klasicky využívám při odesílání formulářů HTML, Javascript a PHP validaci. Protože první 2 nejsou 100 % ochrana. Na tvorbu formulářů je tu již plno vláken, ale na toto téma jsem tu ještě podobné nenašel.

Pattern je novými prohližeči plně podporován i s drobnými animacemi, tak proč ho nevyužívat. Za málo práce pěkný výsledek :-) Jde právě jen o ty pravidla dát dohromady.

Nejhorší je počítat s takovými příklady jako, že má někdo příjmení například Červenokostelecký (zapsáno v České knize rekordů).

Ulice jsou taky hrozný zvěrstva například ulice jménem "GENERÁLA JAROSLAVA SÁZAVSKÉHO VEDRALA".

To číslo je fakt, že by mělo přijímat oba tvary pokud to není přímo někde u labelu telefonu napsaný.

S těma českýma znakama to asi jinak nepujde něž je pěkně vypsat.

 
Nahoru Odpovědět
17.4.2015 12:04
Avatar
Vladislav Domin:17.4.2015 15:02

Nechcem ti do toho moc hovorit, ale musis pocitat s anomaliami, ktore sa mozu vyskytnut...

Kedze neviem, ci tento objednavkovi formular chces pouzivat niekde na eshope alebo to je len praca resp. cvicis si to, tak jedna vec... Pokial si bude fakt objednavat niekto nieco zo zahranicia a nazov ulice bude mat specialne znaky, ktore nema cestina/slovencina, tak prides o klienta (zalezi podla toho, ci budes mat len ceskoslovensko a pod.).

Dalsia vec - pristahovalec - Moze mat v mene specialne znaky ako som spominal hore, tj. Turek, Cinan, Rus a dalsie azijske krajiny...

A hlavne dlzku ulice neurcuj ani mena a priezviska, ak uz tak fakt len to telefonne cislo.

 
Nahoru Odpovědět
17.4.2015 15:02
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.