PHP
这个问题在这里已经有了答案:
这不是mysqli_real_escape_string
,这不是安全的 ,而是PHP用户倾向于使用它的方式。
只要你用set_charset()
设置一个字符集, 并且总是将你的转义值包装在单引号中,尽管类型是,然而从技术上讲,上面的语句是安全的。
但是,正如您所看到的,有太多规则可以遵循 - 对于普通的PHP用户而言,这种情况太复杂了。 因此,这种手动格式化是注入的源泉,因为任何规则(转义,引用,设置字符集)都可能被忽略。
此外,手动转义只会让你的代码变得臃肿。 为什么不让程序为您正确处理数据?
这就是为什么你必须有一个机制来自动应用所有的规则。 如此准备的陈述就是这样一种机制。
像这样的简单函数有什么问题,因此您希望您的代码更喜欢它的任何原因:
$sql = "INSERT INTO table (column1, column2, column3) VALUES (?,?,?)";
some_query($sql, [$value1,$value2,$value3]);
链接地址: http://www.djcxy.com/p/93447.html
上一篇: php
下一篇: Is mysql