Autor | Zpráva | ||
---|---|---|---|
calvary Profil * |
#1 · Zasláno: 28. 7. 2008, 13:08:44
Nebo ještě jedna možnost:
printf("<p>%s</p>\n", htmlspecialchars($text, ENT_QUOTES, utf-8)); |
||
calvary Profil * |
#2 · Zasláno: 28. 7. 2008, 13:38:08
Nebo ještě jedna možnost:
printf("<p>%s</p>\n", htmlentities($text, ENT_QUOTES, utf-8)); sry |
||
filiphk Profil |
#3 · Zasláno: 28. 7. 2008, 13:43:16 · Upravil/a: filiphk
calvary
Tak jsem to narval do "value", jak jsi napsal, ale pak se mi neodešle žádný dotaz. Tady je ukázka původního kódu, tak pokud bys byl prosím tak hodný a doplnil to do něj: <form action='' method='get' accept-charset='windows-1250'> <input type='hidden' name='hledat' value='slovo' />Zadejte jméno:<p> <input type='text' name='jmeno' size='25' maxlength='20' /></p><p> <input type='submit' value='hledat' /></p><p> </p></form>"; |
||
filiphk Profil |
#4 · Zasláno: 28. 7. 2008, 18:40:14
calvary
Tak už se mi to snad povedlo ošetřit tímto způsobem: function nosign($sign) {$sign = Str_Replace(Array("0","1","2","3","4","5","6","7","8","9","0","Q","q", "<",">","&"),"",$sign); return $sign;}; $jmeno = nosign($jmeno); $jmeno = preg_replace('/([^A-Za-z]+)/','',$jmeno); Funkce preg_replace bohužel probouští < , > , &, takže jsem je musel uvést do výčtu u předcházející funkce. Pokud by nějak šlo připsat do preg_replace podmínku, že nemá dovolit čísla 0-9, čímž by se první zápis podstatně zkrátil, byl bych spokojený. :c) |
||
filiphk Profil |
#5 · Zasláno: 29. 7. 2008, 06:13:45
calvary
Tak už se mi to povedlo :c) nosign($sign) {$sign = Str_Replace(Array("Q","q","<",">","&"),"",$sign); return $sign;}; $jmeno = nosign($jmeno); $jmeno = preg_replace('/([^A-Za-z]+)/','',$jmeno); Ještě nějak narvat Q, q, <, >, & do preg_replace a bude to doma. :c) |
||
calvary Profil * |
#6 · Zasláno: 29. 7. 2008, 08:05:19
Ja sem kkt já to psla celou dobu na "post", mrknu na en get
|
||
filiphk Profil |
#7 · Zasláno: 29. 7. 2008, 08:19:43 · Upravil/a: filiphk
Nic se neděje, i tak jsi mi pomohl za což ti děkuji. :c) Ten předchozí problém už jsem vyřešil, takže preg_replace už nepropouští <, >, &. Stačilo podmínku dát v kódu na jiné místo. :c) Qéčko jsem vyřešil takto:
$jmeno = preg_replace('/([^A-Pa-pR-Zr-z]+)/','',$jmeno); Problém je vyřešen, takže diskuzi zamykám. |
||
Časová prodleva: 16 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0