¡¡¡¡ÎÒÃÇÒѾ֪µÀApplicationºÍSession¶ÔÏóµÄOnStart¡¢OnEndʼþµÄ½Å±¾£¬¶¼±ØÐëÊÇÔÚ Global.asa ÎļþÖÐÉùÃ÷µÄ¡£ÄǾ¿¾¹Global.asaÊÇʲôÑùµÄÒ»¸öÎļþ£¿ËüµÄ×÷ÓÃÓкΣ¿ÓÖ¸ÃÈçºÎÔËÓÃÄØ£¿ÇÒÌýÎÒÂýÂýµÀÀ´¡£ ¡¡¡¡Ê×ÏÈ.asaÊÇÎļþºó׺Ãû£¬ËüÊÇActive Server ApplicationµÄÊ××ÖĸËõд¡£Global.asaÎļþ¿ÉÒÔ¹ÜÀíÔÚASPÓ¦ÓÃÖÐÁ½¸ö·Ç³£¿Á¿ÌµÄ¶ÔÏó£ºApplication¡¢Session¡£ ¡¡¡¡ËüÆäʵÊÇÒ»¸ö¿ÉÑ¡Îļþ£¬³ÌÐò±àдÕß¿ÉÒÔÔÚ¸ÃÎļþÖÐÖ¸¶¨Ê¼þ½Å±¾£¬²¢ÉùÃ÷¾ßÓлỰºÍÓ¦ÓóÌÐò×÷ÓÃÓòµÄ¶ÔÏ󡣸ÃÎļþµÄÄÚÈݲ»ÊÇÓÃÀ´¸øÓû§ÏÔʾµÄ£¬¶øÊÇÓÃÀ´´æ´¢Ê¼þÐÅÏ¢ºÍÓÉÓ¦ÓóÌÐòÈ«¾ÖʹÓõĶÔÏ󡣸ÃÎļþ±ØÐë´æ·ÅÔÚÓ¦ÓóÌÐòµÄ¸ùĿ¼ÄÚ¡£Ã¿¸öÓ¦ÓóÌÐòÖ»ÄÜÓÐÒ»¸öGlobal.asaÎļþ¡£ ¡¡¡¡¹ØÓÚGlobal.asaÎļþ×î³£¼ûµÄ´íÎó¸ÅÄîÊÇËüÄÜΪһ°ãµÄʹÓõĺ¯ÊýºÍ×Ó³ÌÐòÓÃ×÷Êé¿â¡£Global.asaÎļþ½öÄÜÓÃÓÚ´´½¨¶ÔÏóµÄÒýÓúͷý»ñÆô¶¯£¬ÒÔ¼°½áÊøApplication¶ÔÏóºÍSession¶ÔÏó¡£ ¡¡¡¡Global.asaÎļþÖ÷Òª»ùÓڻỰ¼¶Ê¼þ±»·ÃÎÊ£¬ÔÚÒÔÏÂÈýÖÖÇé¿öϱ»µ÷Ó㺠¡¡¡¡1£¬µ±Application_OnStart»òApplication_OnEndʼþ±»´¥·¢¡£ ¡¡¡¡2£¬µ±Session_OnStart»òSession_OnEndʼþ±»´¥·¢¡£ ¡¡¡¡3£¬µ±ÒýÓÃÒ»¸öÔÚGlobal.asaÎļþÀﱻʵÀý»¯µÄ¶ÔÏó£¨Object£©¡£ ¡¡¡¡Global.asaµÄ±ê×¼Îļþ¸ñʽÈçÏ£º <SCRIPT LANGUAGE="VBScript" RUNAT="Server"> Sub Application_OnStart 'Application_OnStart µ±Èκοͻ§Ê״ηÃÎʸÃÓ¦ÓóÌÐòµÄÊ×ҳʱÔËÐÐ End Sub Sub Session_OnStart 'Session_OnStart µ±¿Í»§Ê×´ÎÔËÐÐ ASP Ó¦ÓóÌÐòÖеÄÈκÎÒ»¸öÒ³ÃæÊ±ÔËÐÐ End Sub Sub Session_OnEnd 'Session_OnEnd µ±Ò»¸ö¿Í»§µÄ»á»°³¬Ê±»òÍ˳öÓ¦ÓóÌÐòʱÔËÐÐ End Sub Sub Application_OnEnd 'Application_OnEnd µ±¸ÃÕ¾µãµÄ WEB ·þÎñÆ÷¹Ø±ÕʱÔËÐÐ End Sub </SCRIPT> ¡¡¡¡Ò»¡¢Session_onStart ¡¡¡¡ÏÈ¿´Ò»¸ö¿ØÖÆÓû§½øÈëÒ³ÃæµÄ´úÂ룺 ¡¡¡¡1£¬Global.asa£¨·ÅÔÚ±»µ÷ÊÔµÄÐéÄâĿ¼µÄ¸ùĿ¼ÏÂÃæ£© <SCRIPT LANGUAGE="VBScript" RUNAT="Server"> Sub Session_OnStart 'Ö»ÒªÊÇÓû§µÚÒ»´ÎµÇ¼±¾Õ¾£¬Ôò»áÌø×ªµ½Ê×Ò³ response.redirect("http://www.hjuu.com/") End Sub </SCRIPT> ¡¡¡¡È»ºóµ÷ÊÔµ±Ç°ÐéÄâĿ¼ÏµÄÈκÎÎļþ£¬Äã»á·¢ÏÖËùÓÐÒ³Ãæ¶¼Ìø×ªÏòhttp://www.hjuu.com/< ͨ¹ý´Ë¡°Ç¿ÖƽøÈëijҳ¡±µÄÀý×Ó£¬¿ÉÒÔÏëÏóµ±Ê×Ò³ÐèÒª±»¹Ø×¢µÄʱºòÊǷdz£ÓбØÒªµÄ¡£ ¡¡¡¡ÏÂÃæ¾ÍÒÔÒ»¸ö¡°ÔÚÏßÈËÊý¡±µÄÀý×ÓÀ´¼ÌÐø¹Û²ìSession_OnStartºÍSession_OnEndʼþ ¡¡¡¡¶þ¡¢Session_onEnd ¡¡¡¡2£¬Global.asa£¨·ÅÔÚ±»µ÷ÊÔµÄÐéÄâĿ¼µÄ¸ùĿ¼ÏÂÃæ£© <SCRIPT LANGUAGE=VBScript RUNAT=Server> Sub Application_onStart '³õʼֵΪ0 Application("OnLine") = 0 End Sub Sub Session_onStart 'Ò»¸öÓû§·ÃÎʽøÐмÇÊý¼Ó1 Application.Lock Application("OnLine") = Application("OnLine") + 1 Application.Unlock End Sub Sub Session_OnEnd 'Ò»¸öÓû§½ø³ÌµÄ½áÊø£¬¼ÇÊý¼õ1 £¨P.S.Èç¹ûûÓиÃʼþ³ÌÐò£¬ÔòÖ´ÐеľÍÊÇÒ³Ãæ·ÃÎʳÌÐòÁË¡££© Application.Lock Application("OnLine") = Application("OnLine") - 1 Application.Unlock End Sub </SCRIPT> ¡¡¡¡3£¬online.asp <% if request.querystring("logout")="true" then session.Abandon() response.end end if %> µ±Ç°¹²ÓÐ<%=Application("OnLine")%>ÔÚÏß <a href="online.asp?logout=true">Í˳ö</a> ¡¡¡¡Äã·¢ÏÖÔÚ¸ÃÒ³ÖÐÖ»ÓÐÒ»¸öApplication("OnLine")£¬¶øÇÒ»¹ÊDZ»ÏÔʾÒýÓõġ£ÄÇôÆäÖµÀ´×Ժη½£¿ÕâÕýÊÇGlobal.asaÎļþµÄ¹Ø¼üËùÔÚ¡£Äã¿ÉÒÔÔÚ±¾»úÒÀ´Î´ò¿ª¸ö´°¿Ú£¬½øÐнøÐйرմ°¿Ú»òÍ˳öÁ½ÖÖ·½·¨µÄµ÷ÊÔ¡£ ¡¡¡¡Èý¡¢¼ÌÐøÏ¸»¯Ò»Ï ¡¡¡¡ÉÏÃæµÄ³ÌÐòÄã»á·¢ÏÖ£ºµ±½øÐС°Í˳ö¡±Á¬½Óºó¹Ø±Õ´°¿ÚºÍÖ±½Ó¹Ø±Õ´°¿ÚЧ¹ûÊDz»Ò»ÑùµÄ¡£ÒòΪSession´æÔÚʱ¼äµÄÔµ¹Ê£¬µ±Ö±½Ó½øÐйرմ°¿Ú£¬²¢²»ÄÜ´¥·¢Session_OnEndʼþ£¬ËùÒÔ¸ÃÈçºÎʵÏÖÕâ¸ö¼¸ºõ²»¿ÉÄܵÄÏë·¨ÄØ£¿ ¡¡¡¡´ó¼Ò¶¼ÖªµÀ£¬µ±ÍøÒ³½øÐйرյÄʱºò¿ÉÒÔÁ¬´øÒ»¸öonunloadʼþ£¬ÄÇô¸ÃonunloadÖ»ÒªÄÜÖ´ÐÐSessionµÄ×¢Ïú¹¦Äܲ»¾ÍÎÒÃÇÐèÒªµÄÂ𣿷ϻ°ÉÙ˵£¬½«online.asp½øÐÐÐÞ¸Ä ¡¡¡¡3£¬online.asp <% if request.querystring("logout")="true" then session.Abandon() response.end end if %> <body onunload=javascript:window.open("exit.asp")> µ±Ç°¹²ÓÐ<%=Application("OnLine")%>ÔÚÏß <a href="online.asp?logout=true">Í˳ö</a> ¡¡¡¡×¢Ò⣬online.asp½øÐÐonunloadµÄʱºò»á´ò¿ªexit.asp£¬ÄÇÖ»ÒªÔÚexit.aspÖÐÔÙÉèÖÃsession.Abandon()²»¾ÍOKÁË¡£ ¡¡¡¡4£¬exit.asp <%session.Abandon()%> <script> self.close() </script> ¡¡¡¡µ±È»£¬¼ÓÁ˶ÎScript½Å±¾£¬Ä¿µÄÊǽøÐÐSessionµÄ×¢ÏúÒÔºóÁ¢¼´½øÐйرձ¾Éí¡£ÄÇÏÖÔÚ»ù±¾Ò»¸öÔÚÏßͳ¼ÆµÄWebÓ¦ÓþͿÉÒÔÁË¡£ ¡¡¡¡ËÄ¡¢ÉîÈëÑо¿Global.asa ¡¡¡¡´ÓÉÏÃæµÄµ÷ÊÔÖУ¬¾ÙÒ»·´ÈýµÄÄ㣬һ¶¨»áÌá³öÒ»¸öÎÊÌ⣺ÈçºÎ¿ØÖÆ×¢²áÓû§ÔÚÏßÈËÊý£¿ÄÇÏÂÃæ¼¸¸öÎļþÒ»¸öÒ»¸ö¿´£º ¡¡¡¡5£¬Global.asa£¨·ÅÔÚ±»µ÷ÊÔµÄÐéÄâĿ¼µÄ¸ùĿ¼ÏÂÃæ£© <SCRIPT LANGUAGE="VBScript" RUNAT="Server"> Sub Application_OnStart application("online")=0 End Sub Sub Session_OnStart End Sub Sub Session_OnEnd if session.contents("pass") then 'ÅжÏÊÇ·ñΪµÇ¼Óû§µÄSession_OnEnd application.lock application("online")=application("online")-1 application.unlock end if End Sub Sub Application_OnEnd End Sub </SCRIPT> ¡¡¡¡×¢Òâ±¾Global.asaÖеÄSession_OnStart¿é²»×öÈκÎʼþ¡£ ¡¡¡¡ÒòΪһµ©ÓÐÓû§·ÃÎÊ·þÎñÆ÷¶ø²»¹ÜÓû§ÊÇ·ñµÇ¼£¬¶¼»á²úÉúOnStartʼþ£¬¶øÏÖÔÚÐèÒªµÄÖ»ÊǵǼÓû§µÄÔÚÏߣ¬ËùÒÔ²»ÄÜÔÚOnStartʼþÀïʹApplication("online")¼Ó1¡£ ¡¡¡¡ÓÖÒòΪ²»¹ÜÊÇ·ñÊǵǼÓû§µÄ»á»°½áÊø¶¼»á²úÉúOnEndʼþ£¨¼ÙÈçÓзÿͷÃÎÊÁË·þÎñÆ÷µ«²¢²»µÇ¼£¬ËûµÄ»á»°½áÊøºóÒ²»á²úÉúOnEndʼþ£©£¬ËùÒÔÔÚSession_OnEndʼþÀïÓÃÁ˾äifÓï¾äÀ´ÅжÏÊÇ·ñΪÒѵǼÓû§µÄOnEndʼþ£¬Èç¹ûÊDzŽ«ÔÚÏßÈËÊý¼õ1¡£ ¡¡¡¡²¢ÇÒÖµµÃ×¢ÒâµÄÊÇ£ºsession.contents("pass")µÄʹÓã¬ÒòΪÔÚOnEndʼþÀï½ûֹʹÓÃSession¶ÔÏ󣬵«ÊÇ¿ÉÒÔÓÃSession¶ÔÏóµÄ¼¯ºÏÀ´µ÷ÓÃsession±äÁ¿¡£Ò²¾ÍÊÇ˵²»ÄÜÖ±½Óдsession("pass")£¬¶øÊÇÐèҪдsession.contents("pass")¡£ ¡¡¡¡6£¬login.asp <% if request.querystring("logout")="true" then session.Abandon() end if submitname=request.form("submit") if submitname="submit" then name=request.form("name") pwd=request.form("pwd") if name="cnbruce" and pwd="cnrose" then session("name")=name session("pass")=true else response.write "Error Name Or Pwd.<a href='login.asp'>Back</a>" response.end end if application.lock application("online")=application("online")+1 application.unlock %> µ±Ç°×¢²á»áÔ±<%=application("online")%>ÈË¡£ <a href="login.asp?logout=true">Í˳ö</a> <%else%> <form action="login.asp" method="post"> <input type="text" name="name"><br> <input type="password" name="pwd"><br> <input type="submit" name="submit" value="submit"> <%end if%> ¡¡¡¡Ö»ÊǼòµ¥µØ¼ì²âÓÃÃûÊÇcnbruce£¬ÃÜÂëÊÇcnroseµÄʱºò£¬Éú³ÉÒ»¸ösession("pass")=true£¬¾ÍÊÇ·ÅÔÚGlobal.asaÖÐÅжϵġ£ ¡¡¡¡Î壬¼ÌÐø·¢»ÓÏëÏó ¡¡¡¡ÏëÏ룬ÔÙÏëÏë¡£½ö½öͳ¼ÆÓжàÉÙÈËÔÚÏßÊDz»¹»µÄ£¬»¹ÒªÅжÏÓû§µÄÔÚÏß״̬¡£ ¡¡¡¡¿ÉÒÔÏëÏó°ì·¨»ù±¾£¬µ±Óû§µÇ¼µÄʱºò£¬ÔÚlogin.aspÀォonlineÉèΪ1£¨Èç¹ûÓÐÊý¾Ý¿âÔòÉÏ´«£©£¬µ«Óû§ÀëÏßʱ½«onlineÉèΪ0£¬ÒªÍêÉÆËü£¬¾ÍÒªÐÞ¸ÄÒ»ÏÂSession_OnEndʼþ£¬ÔÚ¸ÃʼþÀォonlineÉèΪ0£¨Í¬Ñù½«Îª0µÄÖµÉÏ´«£©¡¡ ¡¡¡¡µ±È»£¬Global.asaÔ¶Ô¶²»Ö¹ÕâЩ¡£²»¹ýÎÒÃÇÏÖÔÚÏȲ»×ż±È«²¿ÕÆÎÕ£¬µ±ÎÒÃǽӴ¥µ½Êý¾Ý¿âµÄʱºòÔÙ·µ»Ø¹ýÀ´¿´£¬¼ÌÐøÑо¿¸ÃÎļþ£¬ÏàÐŵ½ÄÇʱһ¶¨ÓÖ»á¸ÐÎòµ½ºÜ¶à¡£ËùÒÔ£¬»¹ÊÇÏȰÑÉÏÃæµÄÕâЩ³Ô͸°É¡£
|