View previous topic :: View next topic |
Author |
Message |
Corangar
Joined: 14 Jun 2005 Posts: 84
|
Posted: 08.03.2007 16:06 Post subject: Php detect invalid characters ? |
|
|
'vako
Imam formu za registraciju usera
i sad sta bi ja trebao...
Dali se ikako može napraviti detect dali određena varijabla ili &_POST['bla'] sadrži invalid characters poput €@ˇ"#".,; itd
Trazio sam po netu ali uvijek dolazim do replace-a. Samo to nalazim. No ja ne zelim replacat te charactere zelim samo da ih detecta i da izbaci error ako ih ima u username-u ili negdje
Unaprijed hvalja |
|
|
Back to top |
|
|
retro_one
Joined: 16 Sep 2003 Posts: 880 Location: DUBRAVA.
|
Posted: 08.03.2007 16:17 Post subject: |
|
|
RTFM!
treba ti preg_match |
_________________ Just your average eccentric programmer. |
|
Back to top |
|
|
les
Joined: 25 Oct 2004 Posts: 370
|
Posted: 08.03.2007 16:23 Post subject: |
|
|
Hm...
Ja bi recimo za tu svrhu koristio javascript.... Provjeriš ono što se unese u textfield i ako postoji neki od znakova javascript ti javi error...
Druga jednostavna opcija (ako baš želiš koristiti php) može ti bit recimo funkcija strpos(). Ko što kaže retro_one, RTFM |
|
|
Back to top |
|
|
Corangar
Joined: 14 Jun 2005 Posts: 84
|
Posted: 08.03.2007 16:46 Post subject: |
|
|
zahvaljujem
samo mi nije jasna druga stvar
imam trenutno:
Code: | if (!preg_match("/[a-z0-9]/i", $test)) {
print "Username nije dobar...";
exit;
}
|
Fora je u tome što ovo radi, ali samo ako su JEDINO ti illegal characteri unešeni.
Čim ima koje dodatno slovo ili broj smatra tu varijablu valjanom.
Vjerovatno sam negdje pogrijesio ali ovo je prakticki beskorisno osim ako necu nickname stavljat "()$&"=)"$" |
|
|
Back to top |
|
|
retro_one
Joined: 16 Sep 2003 Posts: 880 Location: DUBRAVA.
|
Posted: 08.03.2007 17:00 Post subject: |
|
|
les wrote: | Hm...
Ja bi recimo za tu svrhu koristio javascript.... Provjeriš ono što se unese u textfield i ako postoji neki od znakova javascript ti javi error...
Druga jednostavna opcija (ako baš želiš koristiti php) može ti bit recimo funkcija strpos(). Ko što kaže retro_one, RTFM |
koristiti javascript za ovakav tip problema je samoubojstvo u startu. |
_________________ Just your average eccentric programmer. |
|
Back to top |
|
|
les
Joined: 25 Oct 2004 Posts: 370
|
Posted: 08.03.2007 22:06 Post subject: |
|
|
retro_one wrote: | les wrote: | Hm...
Ja bi recimo za tu svrhu koristio javascript.... Provjeriš ono što se unese u textfield i ako postoji neki od znakova javascript ti javi error...
Druga jednostavna opcija (ako baš želiš koristiti php) može ti bit recimo funkcija strpos(). Ko što kaže retro_one, RTFM |
koristiti javascript za ovakav tip problema je samoubojstvo u startu. |
Hm...
Pa baš ne vidim korelaciju između loše ili nepotrebno upotrebljenog javascripta i skakanja sa 15. kata al ajde...
Znam da javascript možda nije najsretnije rješenje, ali nisam ni mislio da se kompletna provjera obavi samo sa njim, već samo ajmo reć "okvirna provjera" prije nego se pusti da se stvari dalje vrte. Ja to imam običaj ponekad napraviti i ne vidim u tome ništa loše. |
|
|
Back to top |
|
|
tic984
Joined: 07 Sep 2003 Posts: 189 Location: Delnice
|
Posted: 08.03.2007 22:36 Post subject: |
|
|
pa cuj, bez obzira moras provjeravat sve sta korisnik unosi... pa ono, zasto radit poso 2 puta kad mora bit u php-u ionako
Neki ljudi imaju javsacript iskljucen, a o sigurnosti da ne govorim ... |
_________________ ah.. |
|
Back to top |
|
|
sinke
Joined: 02 Oct 2005 Posts: 257 Location: Zagreb
|
Posted: 08.03.2007 23:36 Post subject: |
|
|
les wrote: | Znam da javascript možda nije najsretnije rješenje, ... |
Ne da nije najsretnije, nego uopće nije rješenje! |
_________________ THE SHTANZIG | Web Do's & Don'ts |
|
Back to top |
|
|
carr
Joined: 13 Nov 2003 Posts: 1397 Location: Karlovac
|
Posted: 09.03.2007 17:32 Post subject: |
|
|
tic984 wrote: | pa cuj, bez obzira moras provjeravat sve sta korisnik unosi... pa ono, zasto radit poso 2 puta kad mora bit u php-u ionako |
zato da ne radis bezveze page refresh, da odmah mozes reci korisniku i prije nego submita formu da je ujebao.
rjesenje uopce nije glupo, ako ukljucuje client i server side provjeru. |
_________________ Bolje biti malo lud, nego malo pametan. |
|
Back to top |
|
|
tic984
Joined: 07 Sep 2003 Posts: 189 Location: Delnice
|
Posted: 10.03.2007 20:12 Post subject: |
|
|
zasto ne koristit ajax onda?
pa mu ofarbas polja odma koja je pogrjesio ... (nije da se ne moze javascriptom fkorz )
buduci da si quoto moj post, moram napomenut da ja nisam reko da je rjesenje glupo |
_________________ ah.. |
|
Back to top |
|
|
carr
Joined: 13 Nov 2003 Posts: 1397 Location: Karlovac
|
Posted: 18.03.2007 17:44 Post subject: |
|
|
tic984 wrote: | zasto ne koristit ajax onda?
pa mu ofarbas polja odma koja je pogrjesio ... (nije da se ne moze javascriptom fkorz )
|
kako nisi bolje objasnio pretpostavljam da si ovdje mislio:
- napraviti programsku logiku koja vrsi validaciju sa serverske strane, i onda xmlhttpr requestom to pozivati i validirati.
nije losa ideja, iako bi se mogla dosta zakomplicirati u praksi..i mozda bi malo generirala previse bezveznog prometa tipa ako hocu da onblur() sa svakog polja mi ga on provjeri...
takodjer, puno prometa za relativno jednostavan posao koji i javascript moze sam raditi, bez servera. (znam na sta si ciljao tu, samo navodim).
nego, da li je itko koristio nesto u PHPu/javascriptu kao sto su Validatori u .NET frameworku. tamo to funkcionira otprilike da ga drag'n'dropas i onda povezes sa poljem i eventualno napises funkciju koja vrsi validaciju tog polja...
ima nesto tako gotovo za PHP/Js ili da pisem svoje..?
tic984 wrote: | buduci da si quoto moj post, moram napomenut da ja nisam reko da je rjesenje glupo |
nisam direktno mislio na tebe. |
_________________ Bolje biti malo lud, nego malo pametan. |
|
Back to top |
|
|
maXimus
Joined: 05 Dec 2005 Posts: 55 Location: Zagreb
|
Posted: 18.03.2007 18:22 Post subject: |
|
|
Corangar wrote: | zahvaljujem
samo mi nije jasna druga stvar
imam trenutno:
Code: | if (!preg_match("/[a-z0-9]/i", $test)) {
print "Username nije dobar...";
exit;
}
|
|
Code: | if (!preg_match('/^[a-z0-9]+$/i', $test)) {
print "Username nije dobar...";
exit;
} |
ovo bi ti trebalo radit |
|
|
Back to top |
|
|
tic984
Joined: 07 Sep 2003 Posts: 189 Location: Delnice
|
Posted: 18.03.2007 21:41 Post subject: |
|
|
@carr: pa mozes na submit provjeravat polja ... i onda imas isto prometa kao i da stvarno submitas stranicu dalje ... |
_________________ ah.. |
|
Back to top |
|
|
Corangar
Joined: 14 Jun 2005 Posts: 84
|
Posted: 20.03.2007 19:18 Post subject: |
|
|
@maXimus: thx, stavio sam ovako te radi
Code: | (!preg_match("/^[a-z0-9 _]+\z/i", $test) |
|
|
|
Back to top |
|
|
|