可能重复:
终极清洁/安全功能
在阅读了 PHP 安全性之后,我觉得我编写的任何代码总是不安全的。因此,为了解决用户输入的安全问题,我创建了一个函数,允许我在任何使用情况下转义和删除用户输入。
我只想知道这实际上是否安全,以及是否可以使其更安全。这还能防止什么样的攻击?从我可以通过使用 _GET 告诉 XSS 的情况来看,HTML 输入和 MYSQL 注入会被阻止吗?
function _INPUT($name,$tag,$sql,$url)
{
if ($_SERVER['REQUEST_METHOD'] == 'GET')
$filter = ($_GET[$name]);//Assign GET to filter variable
if ($tag == true)//Remove all HTML, PHP and JAVASCRIPT tags
{
$filter = strip_tags($filter);
}
if ($sql == true)//If MYSQL escaping is enabled
{
$filter = mysql_real_escape_string($filter);
}
if ($url == true)//If URL encoding is enabled
{
$filter = urlencode($filter);
}
return $filter;
}
$output = _INPUT('name',true,true,true);
我也将为 MYSQL 使用准备好的语句,尽管我需要更多地阅读它们以完全了解它如何防止注入。
感谢您的时间。