在PHP 8中防止SQL注入的最好方法



在PHP 8中防止sql注入的最好方法是什么?

我唯一知道的方法是Prepared statement

https://www.php.net/manual/en/mysqli.quickstart.prepared-statements.php

我想知道在PHP-8中是否有其他方法可以防止sql注入?

我看到这些方法是为php5和php7防止SQL注入。但在PHP 8中我们应该怎么做呢?

mysqli::real_escape_string
mysqli::escape_string
mysqli_real_escape_string
(PHP 5, PHP 7)

https://www.php.net/manual/en/mysqli.real-escape-string.php

它还没有被弃用,但我们应该非常小心地使用它。

在PHP-8中还有其他方法吗?

escape_string函数不能完全防止SQL注入。SQL注入甚至可能不需要特殊字符。下面是一个简单的例子:

$id = mysql_real_escape_string("1 OR 1=1");    
$sql = "SELECT * FROM table WHERE id = $id";

准备语句是防止SQL注入的正确方法,无论你的PHP版本如何。

相关内容

  • 没有找到相关文章

最新更新