gpt4 book ai didi

php - 这对于 SQL 注入(inject)是否足够安全

转载 作者:行者123 更新时间:2023-12-02 06:21:44 30 4
gpt4 key购买 nike

我刚刚阅读了有关 SQL 注入(inject)的内容,并在我正在阅读的博客上找到了这个函数我想知道它对 SQL 注入(inject)是否安全。如果我将 do remove_mq($_POST) 传递给它,我可以使用 $_POST["var"]在查询中没有问题?

function remove_mq($array){
foreach($array as $key => $value){
if(is_array($value)){
$array[$key] = remove_mq($value);
}
else{
$array[$key] = addslashes($value);
}
}
return $array;
}

最佳答案

没有。 Addslashes 不是为查询转义的正确函数。您需要使用 mysql_real_escape_string

除此之外,您不应该在实际使用查询中的值之前执行SQL 转义。假设你有类似 <input name="foo" value="$_POST[foo]" 的东西- 那么你需要它 htmlspecialchars() -转义而不是addslashes (etc.)-转义


除此之外,最好的解决方案是使用 PDO使用准备好的语句,因为您将 SQL 查询与参数分开,因此您根本不需要任何转义。

关于php - 这对于 SQL 注入(inject)是否足够安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7954305/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com