| 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: 17 let
|
|||
0