首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP/MySQL:准备好的语句是解决这个问题的解决方案吗?

问PHP/MySQL:准备好的语句是解决这个问题的解决方案吗?
EN

Stack Overflow用户
提问于 2012-08-30 16:44:23
回答 1查看 55关注 0票数 0

如果我在所有的MySQL查询上都使用了预准备语句,我还需要使用mysql_real_escape_string()等来防止它被注入吗?

问题:我让我的代码通过foreach所有的$_POST元素和每个元素上的mysql_real_escape_string()运行。

但当我开始在textareas上使用CKEditor时,这就成了一个问题,因为它会生成插入到数据库中的HTML代码,但在插入代码之前,它会经过我前面提到的foreach循环,转义CKEditor生成的所有引号,使其在显示在HTML页面时不起作用。

那么,也许准备好的语句是可行的呢?

EN

回答 1

Stack Overflow用户

发布于 2012-08-30 16:48:51

如果正确使用了预准备语句,就不需要转义要插入的内容,因为可以将内容从SQL代码中分离出来。

但这不是一种神奇的方法,只是“使用已准备好的方法”。你需要确保你的代码真的进入了参数。您可以(我不是说您正在做这件事,但可以肯定的是)只需要准备一个查询,否则您将运行该查询,并且具有与过去相同的问题。

如果您记得预准备语句不是一个神奇的“现在是安全的”按钮,那么您可以跳过转义代码。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12193063

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档