gpt4 book ai didi

php - 如果没有用户输入,是否需要 mysql_real_escape_string?

转载 作者:可可西里 更新时间:2023-11-01 08:39:57 24 4
gpt4 key购买 nike

我必须对每个查询使用 mysql_real_escape_string 还是仅当页面上有用户输入时才使用?

假设我有:

$check = mysql_query ("SELECT * FROM users WHERE user='$user' AND pm='$on'");
$numrows_check = mysql_num_rows($check);
if ($numrows_check == 1) {

如果页面没有用户输入,我是否需要担心这里的 SQL 注入(inject)?

附言我知道 pdomysqli,我特地询问 mysql。谢谢。

最佳答案

SQL 注入(inject)可以使用表单注入(inject),也可以使用链接注入(inject)。这意味着只要有用户输入,你就必须 mysq_real_escape_string()

注入(inject)如何使用链接进行注入(inject)。示例如下。

http:///www.mysite.com?delete.php?id=5

如果显示这样的 URL 并且有人可以将这个“5”更改为他/她想要的值。所以有几种方法可以避免这种类型的注入(inject),一个简单的解决方案是您可以使用 intval()

因此有必要对每个易受攻击的点使用所有约定。这样你就可以安全地进行形式注入(inject)。所以 预防胜于治疗。

关于php - 如果没有用户输入,是否需要 mysql_real_escape_string?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35958893/

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