php中$_GET与$_POST过滤sql注入的方法
投稿:shichen2014
这篇文章主要介绍了php中$_GET与$_POST过滤sql注入的方法,包含了addslashes_deep函数与数组的操作方法,是非常具有实用价值的技巧,需要的朋友可以参考下
本文实例讲述了php中$_GET与$_POST过滤sql注入的方法,分享给大家供大家参考。具体分析如下:
此函数只能过滤一些敏感的sql命令了,像id=1这种大家还是需要自己简单过滤了。
主要实现代码如下:
复制代码 代码如下:
if (!get_magic_quotes_gpc())
{
if (!empty($_GET))
{
$_GET = addslashes_deep($_GET);
}
if (!empty($_POST))
{
$_POST = addslashes_deep($_POST);
}
$_COOKIE = addslashes_deep($_COOKIE);
$_REQUEST = addslashes_deep($_REQUEST);
}
function addslashes_deep($value)
{
if (empty($value))
{
return $value;
}
else
{
return is_array($value) ? array_map('addslashes_deep', $value) : addslashes($value);
}
}
{
if (!empty($_GET))
{
$_GET = addslashes_deep($_GET);
}
if (!empty($_POST))
{
$_POST = addslashes_deep($_POST);
}
$_COOKIE = addslashes_deep($_COOKIE);
$_REQUEST = addslashes_deep($_REQUEST);
}
function addslashes_deep($value)
{
if (empty($value))
{
return $value;
}
else
{
return is_array($value) ? array_map('addslashes_deep', $value) : addslashes($value);
}
}
希望本文所述对大家的PHP程序设计有所帮助。