首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在输入表单中包含‘?

问如何在输入表单中包含‘?
EN

Stack Overflow用户
提问于 2010-07-14 11:13:52
回答 3查看 71关注 0票数 0

我只是意识到在我的表单中,我不能保存像O'Brian这样的名字(它将只保存为O,并且'Brian将被截断)。

我使用的是带有mysql的grails 1.2.2。

有没有简单的方法可以将‘插入到数据库中?而不是修改每个表单并用html替换该字符?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-07-14 11:17:42

如果插入到数据库中是个问题,那么可以使用参数化查询。强烈建议这样做,因为它避免了可能的安全风险。

想象一下,如果用户在表单中输入"Brian';DROP TABLE data“,而不是只输入一个引号字符!

票数 4
EN

Stack Overflow用户

发布于 2010-07-14 11:15:46

使用转义字符\

例如O\'Brian

请参阅http://dev.mysql.com/doc/refman/5.0/en/string-syntax.html

也就是说,大多数数据库抽象层都允许您使用参数化查询来完成此任务

票数 2
EN

Stack Overflow用户

发布于 2010-07-14 18:40:43

Grails和它的数据库抽象GORM应该为您处理这个问题,除非您自己使用一些低级API来保存它。请参阅文档here。

您不需要自己替换这些字符,所以我建议您再检查一下代码,看看是否能找出可能导致问题的原因。我希望你能找到一个简单的解决方案,使用Grails应该不难:-)

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

https://stackoverflow.com/questions/3243166

复制
相关文章

相似问题

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