sql - Wordpress 数据库输出 - 删除 SQL 注入(inject)转义

标签 sql wordpress sql-injection

我在使用 $wbdb 时遇到问题。当我使用 $wpdb->insert 或 $wpdb->update 插入或更新数据时,SQL 注入(inject)保护实际上将\' 插入到数据库中,并且在输出该信息时它具有 SQL 转义。 (即:My Value\'s Escaped)。

我知道必须有一种方法可以使用 wordpress 函数来逃避这个问题,但我无法在 google 和 wordpress codex 中找到它。 ...那么那个功能是什么,或者我做错了什么(似乎'\'首先不应该真正进入数据库)谢谢!

最佳答案

看起来好像 magic_quotes 在您使用的服务器上启用。

有许多 SO 问题和答案涉及它们是什么,为什么它们不好,以及如何摆脱它们,所以我不会在这里明确解释,但建议你看看以下几个:

  • Magic quotes in PHP
  • Work around magic quotes, or just make sure they're off?
  • How can I disable PHP magic quotes at runtime?
  • How to turn off magic quotes on shared hosting?
  • PHP protecting itself from SQL injections?
  • 关于sql - Wordpress 数据库输出 - 删除 SQL 注入(inject)转义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1739875/

    相关文章:

    c# - 用于大型静态索引数据的最佳无服务器数据库?

    css - 从 Wordpress 插件中删除元素符号点

    html - 如何使用嵌入式 MailChimp 表单在同一行获取电子邮件字段和提交按钮

    php - 可能的 SQL 注入(inject)会删除带有存储过程的表?

    mysql - 为 SQL PreparedStatement 动态添加列 - 仍然可以安全地防止注入(inject)吗?

    php - 这是防止 SQL 注入(inject)的正确方法吗?

    c# - 使用一个函数从 DataRow 或 DataReader 中提取

    mysql - 合并按日期排序的mysql中两个表的记录

    mysql - sql查询中的加权和

    php - 在自定义帖子类型存档的模板中设置 Yoast 标题