我正在考虑使用此处找到的名为 Zebra_Database 的 MySQL 包装器:
http://stefangabos.ro/php-libraries/zebra-database/
有人可以通过代码判断这是否可以防止 SQL 注入,还是我应该采取进一步措施来保护自己?
谢谢!!
我正在考虑使用此处找到的名为 Zebra_Database 的 MySQL 包装器:
http://stefangabos.ro/php-libraries/zebra-database/
有人可以通过代码判断这是否可以防止 SQL 注入,还是我应该采取进一步措施来保护自己?
谢谢!!
它鼓励使用准备好的语句——与 mysqli 使用的相同的有限版本——因此,它没有提供 100% 的保护。
它使用某种查询构建器 - 因此,它使您的 SQL 过于不灵活(并且 - 因此 - 再次不安全)。
就我个人而言,我不会使用它,但对于初学者来说,它总比“用 mysqli_real_escape_string 包装每个输入”要好。
它鼓励使用不易受 SQL 注入影响的预准备语句。
从 Zebra_Database 的首页:
它鼓励开发人员编写可维护的代码,并通过鼓励使用准备好的语句来提供更好的默认安全层,其中参数会自动转义。
这意味着您应该使用准备好的语句,这些语句一开始就不容易受到 SQL 注入的影响。请参阅有关使用准备好的语句的问题。