php整站防sql注入程序,对于MySQL用户,可以使用函数mysql_real_escape_string( ),此函数需要注意编码问题,另外还有一个函数mysql_escape_string( )也可以使用,尽量使用为你的数据库设计的转义函数。如果没有,使用函数addslashes()是最终的比较好的方法。
当所有用于建立一个SQL语句的数据被正确过滤和转义时,实际上也就避免了SQL注入的风险。
下面给一个自己写的函数,能基本解决post接收数据的问题。
/*
函数名称:post_check()
函数作用:对提交的编辑内容进行处理
参 数:$post: 要提交的内容
返 回 值:$post: 返回过滤后的内容
*/
function post_check($post)
{
if (!get_magic_quotes_gpc()) { // 判断magic_quotes_gpc是否为打开
$post = addslashes($post); // 进行magic_quotes_gpc没有打开的情况对提交数据的过滤
}
$post = str_replace(“_”, “\_”, $post); // 把 ‘_’过滤掉
$post = str_replace(“%”, “\%”, $post); // 把’ % ‘过滤掉
$post = nl2br($post); // 回车转换
$post= htmlspecialchars($post); // html标记转换
return $post;
}
php整站防sql注入程序,对于MySQL用户,可以使用函数mysql_real_escape_string( ),此函数需要注意编码问题,另外还有一个函数mysql_escape_string( )也可以使用,尽量使用为你的数据库设计的转义函数。如果没有,使用函数addslashes()是最终的比较好的方法。 当所有用于建立一个SQL语句的数据被正确过滤和转义时,实际上也就避免了SQL注入的风险。 下面给一个自己写的函数,能基本解决post接收数据的问题。 /* 函数名称:post_check() 函数作用:对提交的编辑内容进行处理 参 数:$post: 要提交的内容 返 回 值:$post: 返回过滤后的内容 */ function post_check($post) { if (!get_magic_quotes_gpc()) { // 判断magic_quotes_gpc是否为打开 $post = addslashes($post); // 进行magic_quotes_gpc没有打开的情况对提交数据的过滤 } $post = str_replace(“_”, “\_”, $post); // 把 ‘_’过滤掉 $post = str_replace(“%”, “\%”, $post); // 把’ % ‘过滤掉 $post = nl2br($post); // 回车转换 $post= htmlspecialchars($post); // html标记转换 return $post; }
http://www.5ityx.com/cate100/202984.html