Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms 跳过表单的不存在会话(如果不适用)_Forms_Coldfusion_Form Submit - Fatal编程技术网

Forms 跳过表单的不存在会话(如果不适用)

Forms 跳过表单的不存在会话(如果不适用),forms,coldfusion,form-submit,Forms,Coldfusion,Form Submit,我拥有的是一个表单网站页面,该页面将自动使用从表单网站页面输入的信息填写所需表单。我想弄清楚的是,如果#session.checkout.info.firstname#u 2#不存在,如何跳过它而不让表单担心它 因此有两个字段,一个为所有者,另一个为共同所有者,如果只有一个所有者,则页面不会打开表单,因为它正在寻找要输入为firstname_2的内容,但如果同时输入所有者和共同所有者,则效果良好,因为所有字段都会被输入。有人知道我如何才能让它只担心从第一个表单提交的字段,而忽略尚未输入的会话吗

我拥有的是一个表单网站页面,该页面将自动使用从表单网站页面输入的信息填写所需表单。我想弄清楚的是,如果
#session.checkout.info.firstname#u 2#
不存在,如何跳过它而不让表单担心它

因此有两个字段,一个为所有者,另一个为共同所有者,如果只有一个所有者,则页面不会打开表单,因为它正在寻找要输入为
firstname_2
的内容,但如果同时输入所有者和共同所有者,则效果良好,因为所有字段都会被输入。有人知道我如何才能让它只担心从第一个表单提交的字段,而忽略尚未输入的会话吗

<cfif len(#session.checkout.info.firstname_2#)>
    <cfpdfformparam 
      name="co-owner name" 
      value="#session.checkout.info.firstname_2# #session.checkout.info.middlename_2# #session.checkout.info.lastname_2#">
</cfif>

您可以使用
isDefined
检查变量是否不存在

<cfif isDefined("session.checkout.info.firstname_2")>
  <cfpdfformparam 
    name="co-owner name" 
    value="#session.checkout.info.firstname_2# #session.checkout.info.middlename_2# #session.checkout.info.lastname_2#">
</cfif>

如果您还需要检查长度,您可以将上述内容与您所写内容结合起来


一般来说,使用
structKeyExists()
是一种更好的做法,但是当有多个项目可能不存在时,它可能会很麻烦,例如
structKeyExists(会话,'checkout')&&structKeyExists(会话,'info')&&structKeyExists(会话.checkout.info,'firstname_2')

Vicki,你能用cfparam吗。。。就像在
中一样,它肯定会存在。用空字符串填充它会有什么坏处吗?