Ескейпване на входните параметри на php с addslashes
Ето малко код за ескейпване на входните параметри на php скриптовете. Също така се прави проверка за да се избегне досадното двойно ескейпване.
if (!get_magic_quotes_gpc())
{
foreach ($_GET as $k => $v)
$_GET[$k]=addslashes($v);
foreach ($_POST as $k => $v)
$_POST[$k]=addslashes($v);
foreach ($_REQUEST as $k => $v)
$_REQUEST[$k]=addslashes($v);
foreach ($_GET as $k => $v)
$_GET[$k]=addslashes($v);
}
Също така е добре да се изключва register_globals опцията чрез .htaccess със следното съдържание: php_value "register_globals" "0" Ако очаквате масиви като параметри (например <select multiple ...>) използвайте:
function array_add_slashes($arr)
{
if (!is_array($arr))
return addslashes($arr);
else
{
foreach ($arr as $k=>$v)
$arr[$k]=array_add_slashes($v);
return $arr;
}
}
if (!get_magic_quotes_gpc())
{
foreach ($_GET as $k => $v)
$_GET[$k]=array_add_slashes($v);
foreach ($_POST as $k => $v)
$_POST[$k]=array_add_slashes($v);
foreach ($_REQUEST as $k => $v)
$_REQUEST[$k]=array_add_slashes($v);
foreach ($_GET as $k => $v)
$_GET[$k]=array_add_slashes($v);
}
Няма коментари
Обратно към списъка със статиите
Тази страница последно е променяна на 2025-10-31 14:53:05