2

通过这个问题,我被告知开始对我的数据使用 cfqueryparam,以防止 SQL 注入攻击。

我如何将它用于我的表格?现在我一直在阅读 Ben Forta 的书 Vol 1 并将数据传递给我的表单,然后传递给一个调用 CFC 的表单处理器。CFC 将它们作为一个cfargument然后将其注入到具有任何 type="x" 验证的数据库中。

Io 使用cfqueryparam,我在查询本身上使用它,甚至没有声明cfargument

4

1 回答 1

1

您仍然可以使用 CFC,但请记住,作为函数参数传递的字符串数据仍然需要<cfqueryparam>. 这是一个例子:

<cffunction name="saveData" access="public" returntype="void" output="false"> 
 <cfargument name="formVar" type="string" required="true" />

 <cfquery name="LOCAL.qSave" datasource="myDSN">

  insert into myTable (col1)
  values (<cfqueryparam cfsqltype="cf_sql_varchar" value="#ARGUMENTS.formVar#" />)

 </cfquery>

</cffunction>

养成的重要习惯是始终使用<cfqueryparam>,即使在 CFC 中也是如此。

以下是有关您可能会发现难以使用的边缘情况的更多信息<cfqueryparam>

希望有帮助!

于 2011-01-19T15:03:50.433 回答