Autor Zpráva
PHP_koule
Profil *
Ahoj, chěl jsem se zeptat, jak se dá vložit znak \ do řetězce. Použil jsem toto: "\\", ale nějak to nefunguje. Moc díky.
Majkl578
Profil
Co znamená nefunguje? Mělo by.
PHP_koule
Profil *
Mám tuto funkci:

$kick_slova_post = Array("%", "php", "javacript", "exec", "xml", "'", "<", ">", "script", "xml", "html", "select", "--", "alert", "=", ";", ",", "union", "where", "from", "´", "°", "!", "\/", "\\");

if( preg_match("/(".implode("|",$kick_slova_post).")/", $komunikace_post) ){ $chyba_pole = 1; };

ale při vložení "\\" nefunguje celý preg_match.

Moderátor Majkl578: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Majkl578
Profil
Protože některé z těch znaků mají v reguláru speciální význam. Doporučuji před implode escapovat: implode("|",array_map(function ($item) { return preg_quote($item, '/'); }, $kick_slova_post))
PHP_koule
Profil *
A jak to mám implementovat do současné fce?
Amunak
Profil
PHP_koule:
Nemůžu si pomoct, připadá mi to jako vlastní "escapovací" funkce (pro ošetření vstupu). Pokud to tak opravdu je, tak bys měl začít escapovat tak, jak se to má dělat. Tohle není bezpečné.
PHP_koule
Profil *
já používám htmlspecialchars i na sql při ukládání, ale tohle se mi hodí...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0