Autor | Zpráva | ||
---|---|---|---|
lubomir_f Profil * |
#1 · Zasláno: 25. 1. 2009, 22:35:25
Ahoj, netušíte, proč mi to pořád nebere apostrof v povolených znacích??
Zkoušel jsem všechno možný a stále bez úspěchu: $check = trim($_GET['checkNumber']); $zakaz = false; if(preg_match("#[^-a-zA-Z0-9 ]#", $check)){ $zakaz = 1; } else { $zakaz = 0; } if($zakaz!==false) echo $zakaz; zkoušel jsem i: if(preg_match("#[^'-a-zA-Z0-9 ]#", $check)){ if(preg_match("#[^-a-zA-Z0-9\' ]#", $check)){ |
||
lubomir_f Profil * |
#2 · Zasláno: 25. 1. 2009, 22:59:56
Tak pomáhá tento výraz:
if(preg_match("#[^-a-zA-Z0-9\\\' ]#", $check)){ $zakaz = 1; } Ale já zase nechci, aby mi to povolovalo znak zpětnýho lomítka \ :( |
||
AM Profil * |
#3 · Zasláno: 26. 1. 2009, 18:00:42
Osvědčilo se mi dávat regulární výrazy do jednoduchých uvozovek (apostrofů). Většina problémů pramení z toho, že řetězec nejdřív zpracuje interní PHP parser, a pak až regexp, a na řetězci v apostrofech toho PHP alespoň parsuje méně. Myslím, že preg_match('#[^-a-zA-Z0-9\\\' ]#', $check) by mělo fungovat, případně si pohraj s počtem lomítek, dokud to bude brát jen apostrof a ne zpětné lomítko.
|
||
Časová prodleva: 15 let
|
0