11

这意味着,目前,在 php 中筛选数据以将它们发送到 mysql 数据库是最安全的。

谢谢 )

4

3 回答 3

16

我相信mysql_real_escape_string() mysql i _real_escape_string()是转义输入数据的最佳方式

稍后编辑,因为现在所有内容都已弃用并且信息必须有效:

如果您确实需要使旧代码保持最新,请尝试使用PDO,因为准备好的语句更安全,或者使用mysqli_*() 函数。

于 2012-04-30T07:32:44.220 回答
4

目前,确保您的安全的最首选方式是准备好的声明。

例子:

$preparedStatement = $db->prepare('SELECT * FROM memebers WHERE username = :username');

$preparedStatement->execute(array(':username' => $username));

$rows = $preparedStatement->fetchAll();

然后在显示您的数据使用时htmlspecialchars()

于 2012-04-30T08:27:54.483 回答
3
validMySQL($var) {
$var=stripslashes($var);
$var=htmlentities($var);
$var=strip_tags($var);
$var=mysql_real_escape_string($var);
return $var
}

上面的代码有助于清理大多数无效数据,请记住,您必须连接到 mysql 数据库才能使 mysql_real_escape_string 工作......

于 2012-04-30T08:02:44.070 回答