Autor | Zpráva | ||
---|---|---|---|
KozmíkRadek Profil * |
#1 · Zasláno: 10. 2. 2012, 13:59:00
Hledám script, který by kontroloval přihlašovací jméno. Jde mě hlavně o to, aby uživatelské jméno nemělo mezery, různé znaky (@?!/*-+ ....) a bylo použito pouze ze znaků A-Z,a-z,0-9
Předpokládám, že mě doporučíte regulérní výrazy, jenže to jsem již hledal a nechápu je. Moc děkuji za osobu, která mě daný script přímo sem hodí. Dál si ho už implementuji. |
||
SeparateSK Profil |
Niečo takéto ? :)
<?php function kontrola($text){ if(!ctype_alnum($text)) return false; if(!preg_match("/\S/m",$text)) return false; return true; } $meno="Mám meno s medzerou a s znakmi ako [ ] $ "; if(kontrola($meno)) echo "OK"; else echo "Neplatné meno"; ?> |
||
Keeehi Profil |
if(preg_match("~^[a-z0-9]+$~i",$jmeno)) echo "OK"; else echo "Neplatné meno"; Doufám že víš, že rozsah A-Z neobsahuje znaky s diakritiou. Jinak ten regulár požaduje, aby vstup byl složen jen z A-Z,a-z,0-9 v počtu 1 až nekonečno znaků. |
||
KozmíkRadek Profil * |
#4 · Zasláno: 10. 2. 2012, 15:35:13
v počtu 1 až nekonečno znaků. ... jak regulátor změnit, aby to třeba bylo pro max 20 znaků?
|
||
martin1312 Profil |
#5 · Zasláno: 10. 2. 2012, 15:44:40
Mozes pridat este ako dalsiu kontrolu
if (strlen($jmeno) > 20) echo "Pridlhe meno"; |
||
Keeehi Profil |
#6 · Zasláno: 10. 2. 2012, 16:56:58
Samozřejmě že jde:
if(preg_match("~^[a-z0-9]{1,20}$~i",$jmeno)) |
||
nemeja Profil |
Oba dva pánové Vám neuvedli příklad jak dát podmínku, aby to bylo v požadovanym reguláru a aby to bylo max 20 znaků. Zde ji uvádím:
if(preg_match("~^[a-z0-9]{1,20}$~i",$jmeno) && strlen($jmeno)>20) echo "podminka prosla"; |
||
BuGeR Profil |
#8 · Zasláno: 10. 2. 2012, 17:20:45
nemeja:
Když už, tak: if(preg_match("~^[a-z0-9]{1,20}$~i",$jmeno) && strlen($jmeno) < 20) echo "podminka prosla"; |
||
Keeehi Profil |
#9 · Zasláno: 10. 2. 2012, 19:47:28
nemeja:
Ale já ano. Můj regulár povoluje délku 1-20. No můžeš schválně hádat, co z něho to asi bude. |
||
nemeja Profil |
#10 · Zasláno: 10. 2. 2012, 20:05:25
Aha pardon, přehlíd jsem se, myslel jsem že to je to samé jako před tím :D samozřejmě to taky funguje. *SORRY*
|
||
Časová prodleva: 12 let
|
0