Autor Zpráva
Mufna
Profil
Zdravím Vás. Ošetřuji vstupy z formuláře přes funkci, která má vyházet nebezpečné znaky. Které všechny znaky to jsou ? Stačí to co mám teď v reguláru, nebo je potřeba ošetřit více znaků, nebo naopak něco z toho co tam mám ošetřovat nemusím ?

$regexp = "/[#%&$^<>\"\/|{}~`]/";
__construct
Profil
Mufna:
A čo je na tých znakoch nebezpečné?
NejakyTom
Profil
teoreticky jenom uvozovky ale pro osetrovani bych misto reguler. vyrazu pouzil jit hotove funkce primo pro to urcene
mysql_real_escape_string -> retezec
intval -> cislo
imploder
Profil
Mufna:
Ošetřuji vstupy z formuláře přes funkci, která má vyházet nebezpečné znaky.
Žádný znak není nebezpečný. Je to jenom znak, žádnou škodu udělat nemůže. Nebezpečné může být jenom jeho použití. Použití jsou různá: v HTML kódu stránky, v SQL dotazu atd.. Pokud chci, aby byl znak použitý jenom jako znak a nic nedělal, musím ho před použitím escapovat. Pro různá použití se to dělá různě, jsou na to už hotové funkce: http://phpfashion.com/escapovani-definitivni-prirucka

Když budeš znak escapovat správnou funkcí, bude neškodný. Vyhazovat "nebezpečné znaky" je blbost - je to omezující a náchylné k chybám. Správné je použít escapovací funkci.

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