服务器端验证ColdFusion 9?

时间:2017-05-04 13:35:45

标签: validation coldfusion coldfusion-9 server-side-validation cffunction

我有一个关于我的服务器端验证的问题。我在我的功能中传递了参数。其中一些参数是由用户填充的FROM值,其中一些是我从数据库填充的隐藏值。隐藏值将使用表单上特定字段的当前值。所以我的问题是,如果我在我的cffunction和我的隐藏值中传递新值然后比较这两个,那对我的服务器端验证是否足够?我想知道是否有任何用户可以解决该验证的情况?或者更好的选择是创建cfquery,它将直接从服务器端的DB中提取该记录,而不是在客户端创建隐藏字段,然后将值作为参数传递?以下是我的问题示例:

<select name="vehicles" id="vehicles">
   <input type="hidden" name="curVehicle" id="curVehicle" value="#oldVce.VehcileNum#" readonly>
   <option value="">Pick the vehicle</option>
   <cfloop query="myVehicles">
      <option value="#vehicleNum#">#vehicleName#</option>
   </cfloop>
</select>

服务器端:

<cffunction name="InsertUpdateVehicles" access="remote" returnformat="JSON" output="true">
   <!--- current value from drop down menu --->
   <cfargument name="newVehicle" type="string" required="yes">
   <!--- value from hidden field curVehicle ---> 
   <cfargument name="oldVehicle" type="string" required="yes">

   <cfset myResults = structNew()>

   <cfif trim(arguments.newVehicle) NEQ trim(arguments.oldVehicle)>
       <!--- Run Insert/Update --->
   </cfif>

   <cfreturn myResults>
</cffunction> 

如果有任何人可以提供帮助或提供示例,如果有某种方法可以解决此验证,请告知我们。提前谢谢。

1 个答案:

答案 0 :(得分:2)

如果您想要服务器端验证,则应在您的函数中获取#oldVce.VehcileNum#并在那里进行检查。或者您可以使用哈希函数来加密您的隐藏字段。