jas*_*son 2 coldfusion escaping
所有,
我试图在插入过程中使用getter引用bean.CF没有在'form.title'中的值中正确转义单引号,因此我收到格式错误的SQL错误.
有任何想法吗?
这是代码.
<cfscript>
form.title = "page's are awesome";
page = new model.page.page(argumentCollection = form);
Run Code Online (Sandbox Code Playgroud)
<cfquery name="test" datasource="ksurvey">
insert into page(title)
values('#page.getTitle()#')
</cfquery>
Run Code Online (Sandbox Code Playgroud)
cha*_*fer 14
如果你打算这样做,你需要preserveSingleQuotes()
INSERT INTO page( title )
VALUES ( '#preserveSingleQuotes( page.getTitle() )#' )
当然,插入关于如何使用cfqueryparam来避免SQL注入攻击的标准警告.
INSERT INTO page( title )
VALUES ( <cfqueryparam value="#page.getTitle()#" cfsqltype="cf_sql_varchar" /> )
以供参考: