|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。session|成绩|session怎样获得一切的Session变量?
在程序调试中,偶然候必要晓得有几Session变量在利用,她们的值怎样?因为Session工具供应一个称为Contents的汇合(Collection),我们能够经由过程For...Each轮回来到达方针:
DimstrName,iLoop
ForEachstrNameinSession.Contents
Response.WritestrName&"-"&Session.Contents(strName)&"<BR>"
Next
一样平常情形下,下面的代码能够事情得很好。但当Session变量是一个工具大概数组时,打印的了局就不准确了。
如许我们修正代码以下:
起首看看有几Session变量在利用?
Response.Write"Thereare"&Session.Contents.Count&_
"Sessionvariables<P>"
DimstrName,iLoop
利用ForEach轮回观察Session.Contents
假如Session变量是一个数组?
IfIsArray(Session(strName))then
轮回打印数组的每个元素
ForiLoop=LBound(Session(strName))toUBound(Session(strName))
Response.WritestrName&"("&iLoop&")-"&_
Session(strName)(iLoop)&"<BR>"
Next
Else
其他情形,就复杂打印变量的值
Response.WritestrName&"-"&Session.Contents(strName)&"<BR>"
EndIf
Next
Session变量偶然候不克不及事情,为何?
有良多大概性:
第一,假如客户端不同意cookie操纵,session将生效。由于session是依附于cookie的。
第二,session有生效工夫的设定。缺省的设置是20分钟。你能够如许修正它:Webdirectory->Properties->Virtualdirectory->Applicationsettings->Configuration->AppOptions->Sessiontimeout
大概在ASP中,写上如许的代码:Session.timeout=60。
第三,session是和详细的WebApplication相干的。假如用户从/products/default.asp扫瞄到/jobs/default.asp,也大概形成session的从头创立。
怎样扫除一个不再必要的session变量但不使session生效?
在ASP3.0中:
Session.Contents.Remove "变量名"
能够扫除一个变量。
在ASP2.0中:
setsession("变量名")=NULL
能够扫除变量。
在ASP3.0中,
Session.Contents.RemoveAll
能够扫除一切的session变量和session.abandon分歧,下面的办法都不会使今朝的session过时大概有效。
ASP页面顶真个<%@ENABLESESSIONSTATE=True%>是甚么意义?
IIS利用一种叫做Session跟踪的手艺,来包管各个Session变量在每一个页面是可用的。当用户会见某个ASP页面时分,IIS会起首为这个页面筹办好各个Session变量,这固然会带来功能上的影响。(利用Session变量的价值老是很高的!)
假如你有100个页面,而只要5个页面用到了Session,那末,为了全体的功能,你只必要在那5个页面设置:
<%@ENABLESESSIONSTATE=True%>
而其他页面设置为:
<%@ENABLESESSIONSTATE=False%>
</p>想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的 |
|