ColdFusion 10 vs 11转义输入参数
我在会议上也问了同样的问题: 我最近刚从ColdFusion 10升级到ColdFusion 11,并注意到当在文本框中输入引号时,它们在ColdFusion 11中并没有被转义 这是我的ColdFusion 10服务器上的一个图像,引号会自动转义 以下是Google Chrome的视图来源: 这是我的ColdFusion 11服务器上的一个图像,引号没有被转义 以下是Google Chrome的视图来源: 有人知道这是一个预期的行为还是一个bug吗?我们现在真的必须在每个表单字段值上使用EncodeForHTML()吗 更新: 表单字段代码如下所示:ColdFusion 10 vs 11转义输入参数,coldfusion,coldfusion-10,coldfusion-11,Coldfusion,Coldfusion 10,Coldfusion 11,我在会议上也问了同样的问题: 我最近刚从ColdFusion 10升级到ColdFusion 11,并注意到当在文本框中输入引号时,它们在ColdFusion 11中并没有被转义 这是我的ColdFusion 10服务器上的一个图像,引号会自动转义 以下是Google Chrome的视图来源: 这是我的ColdFusion 11服务器上的一个图像,引号没有被转义 以下是Google Chrome的视图来源: 有人知道这是一个预期的行为还是一个bug吗?我们现在真的必须在每个表单字段值上使
<cfinput type="text" name="NAME_HERE"
value="#VARIABLE_HERE#"
size="60" maxlength="1250">
如何准确地将值放入输入的属性中?我想说你应该一直对它进行编码。这就是表单字段的外观。我还没有使用CF 11,但我假设从CF 10开始,CFINPUT在幕后使用EncodeforHtmlatAttribute()('value'是一个属性),而不是HTMLEditFormat(),这就是它在CF 9和更低版本中使用的。也许CF10也使用HTMLEditFormat()?啊,cfinput。我从来没有用过这些标签。这就解释了混淆的原因。是的,这段代码是7-8年前遗留下来的东西,所以我们当时经常使用cfinput。当我使用普通输入标记时,它不会被转义,因此cfinput不再转义ColdFusion 11上的任何内容。我想知道这是否在任何地方都有记录。