« 1 2
Autor Zpráva
calvary
Profil *
Nebo ještě jedna možnost:

printf("<p>%s</p>\n", htmlspecialchars($text, ENT_QUOTES, utf-8));
calvary
Profil *
Nebo ještě jedna možnost:

printf("<p>%s</p>\n", htmlentities($text, ENT_QUOTES, utf-8));

sry
filiphk
Profil
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>&nbsp;</p></form>";
filiphk
Profil
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
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 *
Ja sem kkt já to psla celou dobu na "post", mrknu na en get
filiphk
Profil
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.
« 1 2
Toto téma je uzamčeno. Odpověď nelze zaslat.

0