我的表单中的Form变量正在通过Session传递/检索。
我有一个麻烦的Form变量(formField1
)在Session中没有正确定义,但是整个表单都已投入使用。然后填充并使用此特定的Form变量(formField1),将其捕获在Session中并抛出错误。我给出了一个停止间隙解决方案:
<cfif isDefined("TTsession.filing.formField1")>
<cfset TTD formField1 = TTsession.filing.formField1>
<cfelse>
<cfset TTD formField1 = "0">
</cfif>
TTsession
=会话变量的名称
formField1
=错误表单字段的名称。
因此,TTsession.filing.formField1
未正确定义的所有表单都输出0
。
我不想要这个。我想做的是:
<cfset FormVar1=session.FormVar1>
<cfset FormVar1=session.FormVar1>
我正在使用CFMX6.1。
答案 0 :(得分:4)
<cfparam name="FormVar1" default="0">
<!--- set overide defaults if in the session --->
<cfif StructKeyExists( TTsession.filing, "formField1")>
<cfset FormVar1 = TTsession.filing.formField1>
</cfif>
我认为问题可能是您创建此会话的位置,但是如果您只想设置默认值,请使用cfparam:
<cfparam name="session.filling.formfield1" type="numeric" default="0">
因此,如果定义了会话var,则不执行任何操作。否则用零值定义它。全部在一行。