我是否从sql注射中拯救了自己?

use*_*391 4 php mysql sql-injection

我这样做了吗?这有助于避免sql注入吗?

$deleteid = htmlspecialchars(strip_tags(mysql_real_escape_string($_POST['listid'])));

mysql_send("DELETE FROM stage where listid='$deleteid'");
Run Code Online (Sandbox Code Playgroud)

SLa*_*aks 13

没有.

你应该只打电话mysql_real_escape_string.

htmlspecialcharsstrip_tags功能被用于编码的字符串被显示为HTML.
它们不应该与SQL一起使用

  • `mysql_real_escape_string($ stuff_to_encode);` (2认同)

Phi*_*ler 8

它可能会阻止SQL注入攻击,但它很难接近它.请改用准备好的查询.

由于您的评论表明您正在系统地对整个网站进行更改,因此请采用更好的方法.在您使用它时,您可能希望转移到非MySQL特定的数据库API,以防您以后想要切换到另一个后端.