初学coldfusion,确不知道怎么定义session和释放session
如果要使用session,要在admin里设定session的使用类型和有效时间多长。
然后再application.cfm的第一行写上
<cfapplication name = "你的工程名字" sessionTimeout = #CreateTimeSpan(0, 0, 0, 60)# sessionManagement = "Yes">
其中,sessiontimeout是用来设置session的有效期。但是这里的定义是不能超过你在admin里定义的时间长度。就算超过也没有用。
session的使用是
<cfset session.your_session_name = "Your Value">
判断session是否存在是:
<cfif isdefined("session.your_session_name")>
你的代码
</cfif>
session其实是一个struct。所以可以使用struct函数去删除一个session。
<cfset StructDelete(Session, "your_session_name")>
在session定义时是这样写的
<cfset session = StructNew()>
<cfset session.username ="#Form.username#">
但是,在删除session的时候出现错误,<cfset StructDelete(session, "session.username")>
提示出“session未定义!”
cfset session = StructNew()> --- 这行不用写
<cfset session.username ="#Form.username#">
删除应该是这样
<cfset StructDelete(session, "username")>
记住,要在admin和application.cfm里告诉coldfusion,这个程序需要session。那样才能使用session。<cfapplication name="sess" sessionManagement = "Yes" sessionTimeout = #CreateTimeSpan(0, 0,0,3600)# setClientCookies = "Yes"> --- 是加这样一句话吗?
但是还是清除不了session,没办法,我就这样写了<cfset session.username =""> 。
这样只是把session值设空了,但是还是没清除session。不知道还有没有别的什么方法?
StructClear(session)