我已多次阅读this page上的说明,现在我有点了解他们的意图。然而,有些观点仍然存在困惑。
举个例子:
$unsafe_variable = $_POST["user-input"];
$safe_variable = mysql_real_escape_string($unsafe_variable);
mysql_query("INSERT INTO table (column) VALUES ('" . $safe_variable . "')");
以上代码不受攻击
但我有一些使用相同参数的代码,例如:
$safe_variable = $_POST["user-input"];
$safe_variable = mysql_real_escape_string($safe_variable);
mysql_query("INSERT INTO table (column) VALUES ('" . $safe_variable . "')");
我使用的SQL注入也是安全的吗?还是有害的?
PHP版
目前我使用的是5.5.0版本
根据我的信息,使用mysql_real_escape_string
已过期 PHP 5.5.0 ,最好使用mysqli::escape_string
如果是这样,代码是否应该这样写?
$safe_variable = mysqli::escape_string($unsafe_variable);
请启示。谢谢..