【问题标题】:Can trim() and strip_tags() prevent sql injection in php? [duplicate]trim() 和 strip_tags() 可以防止 php 中的 sql 注入吗? [复制]
【发布时间】:2020-02-16 00:14:46
【问题描述】:

使用 trim() 和 strip_tags() 来防止 sql 注入与 PDO 或 Prepaid Statement 一样好吗? 关于如何防止sql注入还有另一个问题。那里甚至没有讨论 trim() 和 strip_tags() 。 我不知道人们从哪里说在前一个问题答案中重复发现 trim() 和 strip_tags() !?再次阅读答案和我的问题

     $username = strip_tags(trim($_POST["username"]));
     $password = strip_tags(trim($_POST["password"]));

【问题讨论】:

  • trim() 用于从字符串中去除空格,strip_tags() 用于从字符串中去除 HTML 标签,它们不用于防止 SQL 注入。这些方法无法保护您免受可被解释为 sql 命令一部分的特殊字符的影响。

标签: php mysql


【解决方案1】:

不,防止 SQL 注入的最佳方法是使用准备好的语句和参数化查询。

你可以参考这个问题。 How can I prevent SQL injection in PHP?

【讨论】:

    【解决方案2】:

    如果您正在开发核心 php 应用程序,我建议使用 PDO

    【讨论】:

      猜你喜欢
      • 2013-02-25
      • 2015-11-08
      • 1970-01-01
      • 1970-01-01
      • 2012-07-30
      • 2018-03-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多