首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql_real_escape_string()不应该在数据库中留下斜杠吗?

问mysql_real_escape_string()不应该在数据库中留下斜杠吗?
EN

Stack Overflow用户
提问于 2008-11-10 10:43:49
回答 1查看 1.3K关注 0票数 3

我正在使用smarty和mysql_real_escape_string()进行用户输入,当我使用'或"插入一些代码时,在phpmyadmin中查找时,它显示没有反斜杠。

当我从数据库获取记录时,我也没有反斜杠。但是,当我只传递转义字符串而没有插入到db中时,它会被反斜杠。

它不是应该添加斜杠,插入它们,然后在输出时剥离它们吗?还是我错过了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2008-11-10 11:03:31

你错过了-使用反斜杠进行转义是为了确保查询不会格式错误,例如,这样的查询肯定会中断,并可能有SQL注入的风险:

代码语言:javascript
复制
insert into table values ('whatever 'this' is')

表中将不会保存任何内容,而如下所示:

代码语言:javascript
复制
insert into table values ('whatever \'this\' is')

将在表中保存“不管'this‘是什么”的值。

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

https://stackoverflow.com/questions/277575

复制
相关文章

相似问题

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