|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ASP在国内异常流行,因为国内大多使用的是盗版的Windows和盗版的SQLServer,而ASP+COM+SQLServer实际上也是一种不错的搭配,其性能也不输于PHP+MYSQL,特别是Windows系统和SQLServer都有图形界面,比APACHE和MYSQL易于维护,因此对于不重视知识产权的国家来说也是一种不错的选择。application|对象|内置对象 这是由于 Application 对象是作为纠合被完成的。数组元素 StoredArray(3) 未取得新的赋值。而此值将包括在 Application 对象纠合中,并将掩盖此地位之前存储的任何信息。建议您在将数组存储在 Application 对象中时,在检索或改动数组中的对象前获得数组的一个正本。在对数组操作时,您应再将数组全体存储在 Application 对象中,如许您所做的任何修改将被存储上去。以下的剧本对此停止演示。
---asp8a.asp---
< %
dim MyArray()
Redim MyArray(5)
MyArray(0)="hello"
MyArray(1)="some other string"
Application.Lock
Application("StoredArray")=MyArray
Application.Unlock
Response.Redirect "asp8b.asp"
%>
---asp8b.asp---
< %
LocalArray=Application("StoredArray")
LocalArray(1)=" there"
Response.Write LocalArray(0)&LocalArray(1)
Application.Lock
Application("StoredArray")=LocalArray
Application.Unlock
%>
与 Application 对象具有邻近感化的另外一个十分适用的 ASP 内建对象就是 Session。咱们可使用 Session 对象存储特定的用户会话所需的信息。当用户在使用法式的页之间跳转时,存储在 Session 对象中的变量不会排除,而用户在使用法式中会见页面时,这些变量一直存在。当用户恳求来自使用法式的 Web 页时,假如该用户还没有会话,则 Web 办事器将主动创立一个 Session 对象。当会话过时或被保持后,办事器将终止该会话。
经由过程向客户法式发送独一的 Cookie 可以办理办事器上的 Session 对象。当用户第一次恳求 ASP 使用法式中的某个页面时,ASP 要反省 HTTP 头信息,检查是不是有在报文中着名为 ASPSESSIONID 的 Cookie 发送过去,假如有,则办事器会启动新的会话,并为该会话生成一个全局独一的值,在把这个值作为新 ASPSESSIONID Cookie 的值发送给客户端,恰是利用这类 Cookie,可以会见存储在办事器上的属于客户法式的信息。Session 对象最多见的感化就是存储用户的首选项。例如,假如用户指明不喜好检查图形,就能够将该信息存储在 Session 对象中。别的其还常常被用在判别客户身份的法式中。要注重的是,会话形态仅在撑持 cookie 的阅读器中保存,假如客户封闭了 Cookie 选项,Session 也就不克不及发扬感化了。
1、属性
1、SessionID
SessionID 属性前往用户的会话标识。在创立会话时,办事器会为每个会话生成一个独自的标识。会话标识以长整形数据类型前往。在良多情形下 SessionID 可以用于 WEB 页面注册统计。
2、TimeOut
Timeout 属性以分钟为单元为该使用法式的 Session 对象指定超不时限。假如用户在该超不时限以内不刷新或恳求网页,则该会话将终止。
2、办法
Session 对象唯一一个办法,就是 Abandon,Abandon 办法删除一切存储在 Session 对象中的对象并释放这些对象的源。假如您未明白地挪用 Abandon 办法,一旦会话超时,办事器将删除这些对象。当办事器处置完以后页时,上面示例将释放会话形态。
< % Session.Abandon %>
3、事务
Session 对象有两个事务可用于在 Session 对象启动和释放是运转进程。
1、Session_OnStart 事务在办事器创立新会话时产生。办事器在履行恳求的页之前先处置该剧本。Session_OnStart 事务是设置会话期变量的最好机会,由于在会见任何页之前城市先设置它们。
虽然在 Session_OnStart 事务包括 Redirect 或 End 办法挪用的情形下 Session 对象仍会坚持,但是办事器将中断处置 Global.asa 文件并触发 Session_OnStart 事务的文件中的剧本。
为了确保用户在翻开某个特定的 Web 页时一直启动一个会话,就能够在 Session_OnStart 事务中挪用 Redirect 办法。当用户进入使用法式时,办事器将为用户创立一个会话并处置 Session_OnStart 事务剧本。您可以将剧本包括在该事务中以便反省用户翻开的页是否是启动页,假如不是,就唆使用户挪用 Response.Redirect 办法启动网页。法式以下:
< SCRIPT RUNAT=Server Language=VBScript>
Sub Session_OnStart
startPage = "/MyApp/StartHere.asp"
currentPage = Request.ServerVariables("SCRIPT_NAME")
if strcomp(currentPage,startPage,1) then
Response.Redirect(startPage)
end if
End Sub
< /SCRIPT>
上述法式只能在撑持 cookie 的阅读器中运转。由于不撑持 cookie 的阅读器不克不及前往 SessionID cookie,所以,每当用户恳求 Web 页时,办事器城市创立一个新会话。如许,关于每一个恳求办事器都将处置 Session_OnStart 剧本并将用户重定向到启动页中。
2、Session_OnEnd 事务在会话被保持或超时产生。
关于利用 Session 对象需求注重的事项 Application 对象邻近,请参照前文。
会话可以经由过程以下三种体例启动 :
1、一个新用户恳求会见一个 URL,该 URL 标识了某个使用法式中的 .asp 文件,而且该使用法式的 Global.asa 文件包括 Session_OnStart 进程。
2、用户在 Session 对象中存储了一个值。
3、用户恳求了一个使用法式的 .asp 文件,而且该使用法式的Global.asa 文件利用 < OBJECT> 标签创立带有会话感化域的对象的实例。
假如用户在指准时间内没有恳求或刷新使用法式中的任何页,会话将主动停止。这段工夫的默许值是 20 分钟。可以经由过程在 Internet 办事办理器中设置“使用法式选项”属性页中的“会话超时”属性改动使用法式的默许超时限制设置。应根据您的 Web 使用法式的请求和办事器的内存空间来设置此值。例如,假如您但愿阅读您的 Web 使用法式的用户在每页仅逗留几分钟,就应当延长会话的默许超时价。太长的会话超时价将招致翻开的会话过量而耗尽您的办事器的内存资本。关于一个特定的会话,假如您想设置一个小于默许超时价的超时价,可以设置 Session 对象的 Timeout 属性。例如,上面这段剧本将超时价设置为 5 分钟。
< % Session.Timeout = 5 %>
固然你也能够设置一个大于默许设置的超时价,Session.Timeout 属性决意超时价。你还可以经由过程 Session 对象的 Abandon 办法显式停止一个会话。例如,在表格中供应一个“加入”按钮,将按钮的 ACTION 参数设置为包括以下号令的 .asp 文件的 URL。
< % Session.Abandon %>
想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的 |
|