Coldfusion 和会话变量未设置

Coldfusion and session variable not setting

我有一个包含 5 个问题的调查表,每个页面上有一个问题,用户点击它们并点击页面上的下一个按钮。现在,用户没有登录,我只想在用户在表单上接受第一个问题并单击下一步时设置一个会话变量。但是我得到 userid not defined in session for the line 2。我不太确定我在这里做错了什么。任何人都可以建议他们是否看到发生了什么。我不想每次他点击下一步按钮时都创建多个用户标识。谢谢

<cfif structKeyExists(FORM, "user_mode") and form.user_mode EQ "next">  

<cfif NOT ( StructKeyExists(session,userid) )> 
<cfquery name="insertuser" datasource="#application.datasource#">
         INSERT INTO survey_user(ip_address)
            VALUES (<cfqueryparam cfsqltype="cf_sql_varchar" value="#CGI.REMOTE_ADDR#" />)
        </cfquery>
</cfif>
</cfif>
StructKeyExists(session,userid)

应该是:

structKeyExists( session, 'userid' )

注意引号。没有它们,它正在寻找变量 "userid" 而不是键名 "userid".