¡¾·±ÌåÖÐÎÄ¡¿
¡¾ÉèΪÊ×Ò³¡¿
¡¾¼ÓÈëÊղء¿
µ±Ç°Î»ÖãºASP¼¼ÊõÊ×Ò³ >> ASPÓ¦Óà >> ÉîÈëÑо¿ApplicationºÍSession¶ÔÏó(°üÀ¨global.asa)3

ÉîÈëÑо¿ApplicationºÍSession¶ÔÏó(°üÀ¨global.asa)3

2004-10-01 08:26:10  ×÷Õߣº  À´Ô´£º»¥ÁªÍø  ä¯ÀÀ´ÎÊý£º6  ÎÄ×Ö´óС£º¡¾´ó¡¿¡¾ÖС¿¡¾Ð¡¡¿
¼ò½é£ºÈý¡¢Global.asa ¡¡¡¡ASPµÄApplicationºÍSession¶ÔÏóÌåÏÖÁËÆäËûASPÄÚÖöÔÏóËùûÓеÄÌØÕ÷--ʼþ¡£Ã¿Ò»¸ö·Ã¿Í·ÃÎÊ·þÎñÆ÷ʱ¶¼»á´¥·¢Ò»¸öOnStartʼþ£¨µÚÒ»¸ö·Ã¿Í»áͬʱ´¥·¢ApplicationºÍSessionµÄOnStartʼþ£¬µ«Ap...

Èý¡¢Global.asa

¡¡¡¡ASPµÄApplicationºÍSession¶ÔÏóÌåÏÖÁËÆäËûASPÄÚÖöÔÏóËùûÓеÄÌØÕ÷--ʼþ¡£Ã¿Ò»¸ö·Ã¿Í·ÃÎÊ·þÎñÆ÷ʱ¶¼»á´¥·¢Ò»¸öOnStartʼþ£¨µÚÒ»¸ö·Ã¿Í»áͬʱ´¥·¢ApplicationºÍSessionµÄOnStartʼþ£¬µ«ApplicationÏÈÓÚSession£©£¬Ã¿¸ö·Ã¿ÍµÄ»á»°½áÊøÊ±¶¼»á´¥·¢Ò»¸öOnEndʼþ£¨×îºóÒ»¸ö·Ã¿Í»á»°½áÊøÊ±»áͬʱ´¥·¢ApplicationºÍSessionµÄOnEndʼþ£¬µ«SessionÏÈÓÚApplication£©¡£

¡¡¡¡OnStartºÍOnEndÕâÁ½¸öʼþÒ»°ãÓ¦ÓÃÔÚÐéÄâÉçÇøÖÐͳ¼ÆÔÚÏßÈËÊý¡¢ÐÞ¸ÄÓû§µÄÔÚÏßÀëÏß״̬µÈ¡£Òª¾ßÌ嶨ÒåÕâÁ½¸öʼþ£¬ÐèÒª½«´úÂëдÔÚGlobal.asaÎļþ£¬²¢½«¸ÃÎļþ·ÅÔÚÕ¾µãµÄ¸ùĿ¼Ï£¨È±Ê¡ÊÇ\Inetpub\wwwroot\£©¡£ÁíÍ⣬ApplicationºÍSession¶ÔÏ󹿶¨ÁËÔÚOnEndʼþÀï³ýÁËApplication¶ÔÏóÍâÆäËûASPÄÚÖöÔÏó£¨Response¡¢Request¡¢Server¡¢Session...£©Ò»¸Å²»ÄÜʹÓá£ÒÔϾÙÒ»¸öÐéÄâÉçÇøÍ³¼ÆÔÚÏßÈËÊýµÄÀý×ÓÀ´ËµÃ÷ÈçºÎʹÓÃÕâÁ½¸öʼþ¡£

¡¡¡¡Îļþ˵Ã÷£º

¡¡¡¡global.asa λÓÚd:\Inetpub\wwwroot\Ŀ¼ÏÂ

¡¡¡¡default.asp λÓÚd:\Inetpub\wwwroot\Ŀ¼Ï£¬ÐéÄâÉçÇøµÇÂ¼Ò³Ãæ

¡¡¡¡login.asp λÓÚd:\Inetpub\wwwroot\Ŀ¼Ï£¬ÓÃÓÚ¼ì²âÓû§ÊäÈëµÄÓû§Ãû¼°ÃÜÂë

¡¡¡¡index.asp λÓÚd:\Inetpub\wwwroot\Ŀ¼Ï£¬ÐéÄâÉçÇøÊ×Ò³

¡¡¡¡bbs.mdb λÓÚd:\Inetpub\wwwroot\Ŀ¼Ï£¬´æ´¢Óû§ÐÅÏ¢µÄÊý¾Ý¿â

¡¡¡¡Êý¾Ý¿â£¨ACCESS£©½á¹¹£º

¡¡¡¡ ===bbs±í===

¡¡¡¡id Óû§ID£¬³¤ÕûÐÍ

¡¡¡¡name Óû§Ãû£¬Îı¾ÐÍ

¡¡¡¡code ÃÜÂ룬Îı¾ÐÍ

¡¡¡¡online ÔÚÏß״̬£¬ÊÇ/·ñ

¡¡

¡¡¡¡===global.asa===

¡¡¡¡£¼script LANGUAGE="VBScript" RUNAT="Server"£¾

¡¡¡¡Sub Application_OnStart

¡¡¡¡¡¡application("online")=0

¡¡¡¡End Sub

¡¡¡¡sub Application_OnEnd

¡¡¡¡nd 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

¡¡¡¡£¼/script£¾

¡¡¡¡==============

¡¡¡¡===login.asp===

¡¡¡¡ ......'ÃÜÂëÑéÖ¤£¬Á¬½ÓÊý¾Ý¿â£¬¼ì²âÓû§ÊäÈëµÄÓû§Ãû¼°ÃÜÂëÊÇ·ñÕýÈ·

¡¡¡¡if ÃÜÂëÑé֤ͨ¹ý then

¡¡¡¡¡¡session("name")=rs("name")

¡¡¡¡¡¡session("id")=rs("id")

¡¡¡¡¡¡session("pass")=true

¡¡¡¡else

¡¡¡¡¡¡rs.close

¡¡¡¡¡¡conn.close

¡¡¡¡¡¡response.write "ÃÜÂë´íÎó£¡"

¡¡¡¡¡¡response.end

¡¡¡¡end if

¡¡¡¡application.lock

¡¡¡¡application("online")=application("online")+1

¡¡¡¡conn.Execute ("update bbs set online=1 where id="&session("id"))'½«Óû§µÄ״̬ÉèΪÔÚÏß

¡¡¡¡application.unlock

¡¡¡¡rs.close

¡¡¡¡conn.close

¡¡¡¡response.redirect "index.asp" '³õʼ»¯Êý¾ÝºóÌø×ªµ½ÉçÇøÊ×Ò³

¡¡¡¡===========

¡¡¡¡ÔÚ±¾ÀýÖУ¬ÓÃapplication("online")±äÁ¿¼Ç¼ÒѾ­µÇ¼ÉçÇøµÄÔÚÏßÈËÊý£¬ÒòΪһµ©ÓÐÓû§·ÃÎÊ·þÎñÆ÷¶ø²»¹ÜÓû§ÊÇ·ñµÇ¼£¬¶¼»á²úÉúOnStartʼþ£¬ËùÒÔ²»ÄÜÔÚOnStartʼþÀïʹApplicaiton("online")¼ÓÒ»¡£ÒòΪ²»¹ÜÊÇ·ñÊǵǼÓû§µÄ»á»°½áÊø¶¼»á²úÉúOnEndʼþ£¨¼ÙÈçÓзÿͷÃÎÊÁË·þÎñÆ÷µ«²¢²»µÇ¼ÉçÇø£¬ËûµÄ»á»°½áÊøºóÒ²»á²úÉúOnEndʼþ£©£¬ËùÒÔÔÚSession_OnEndʼþÀïÓÃÁ˾äifÓï¾äÀ´ÅжÏÊÇ·ñΪÒѵǼÓû§µÄOnEndʼþ£¬Èç¹ûÊDzŽ«ÔÚÏßÈËÊý¼õÒ»¡£

¡¡¡¡ÕâÖ»ÊÇÒ»¸öͳ¼ÆÔÚÏßÈËÊýµÄ¼òµ¥Àý×Ó£¬¶ÔÓÚÒ»¸öÍêÕûµÄÐéÄâÉçÇøÀ´Ëµ£¬½ö½öͳ¼ÆÓжàÉÙÈËÔÚÏßÊDz»¹»µÄ£¬ÔÚ±¾ÀýÖÐÊý¾Ý¿âÀïÓиöonline×Ö¶ÎÊÇÓÃÀ´¼Ç¼Óû§µÄÔÚÏß״̬£¬Óû§µÇ¼µÄʱºò£¬ÔÚlogin.aspÀォonlineÉèΪ1£¬µ«Óû§ÀëÏßʱ²¢Ã»Óн«onlineÉèΪ0£¬ÒªÍêÉÆËü£¬¾ÍÒªÐÞ¸ÄÒ»ÏÂSession_OnEndʼþ£¬ÔÚ¸ÃʼþÀォonlineÉèΪ0¡£

¡¡¡¡===£ç£ì£ï£â£á£ì£®£ó£á£ó===

¡¡¡¡£¼script LANGUAGE="VBScript" RUNAT="Server"£¾

¡¡¡¡Sub Application_OnStart

¡¡¡¡¡¡application("online")=0

¡¡¡¡¡¡set application("conn")=Server.CreateObject("ADODB.Connection")

¡¡¡¡¡¡application("db")=Server.MapPath("\bbs.mdb") '´Ë´¦×îºÃʹÓþø¶Ô·¾¶\bbs.mdb£¬ÏÂÎÄÓÐÏêϸ½éÉÜ

¡¡¡¡End Sub

¡¡¡¡sub Application_OnEnd

¡¡¡¡¡¡set application("conn")=nothing

¡¡¡¡End Sub

¡¡¡¡¡¡Sub Session_OnStart

¡¡¡¡End Sub

¡¡¡¡Sub Session_OnEnd

¡¡¡¡¡¡if session.contents("pass") then 'ÅжÏÊÇ·ñΪµÇ¼Óû§µÄSession_OnEnd

¡¡¡¡¡¡¡¡¡¡application("con").open ="driver={Microsoft Access Driver (*.mdb)};dbq="&application("db")

¡¡¡¡¡¡ ¡¡¡¡application.lock

¡¡¡¡¡¡¡¡¡¡ application("online")=application("online")-1

¡¡¡¡¡¡¡¡¡¡ application("con").Execute ("update friends set online=0 where id="&session.contents("id"))

¡¡¡¡¡¡¡¡¡¡ application.unlock

¡¡¡¡¡¡¡¡¡¡ application("con").close

¡¡¡¡¡¡end if

¡¡¡¡End Sub

¡¡¡¡£¼£¯script£¾

¡¡¡¡==============

¡¡¡¡ÖÁ´Ë£¬ÍêÕûµÄ´úÂëÒѾ­Íê³ÉÁË¡£ÒòΪÔÚApplicationºÍSessionµÄOnEndʼþÀï²»ÄÜʹÓÃServer¶ÔÏó£¬ËùÒÔÒª½«Êý¾Ý¿âµÄÁ¬½Ó¼°Êý¾Ý¿âÔÚ·þÎñÆ÷ÉϵÄÎïÀíµØÖ·£¨d:\inetpub\wwwroot\bbs.mdb£©´æ´¢ÔÚapplication±äÁ¿ÖУ¬²¢ÔÚApplication_OnStartʼþÖÐÔ¤ÏÈ´¦Àí¡£Í¬Àí£¬ÔÚSession_OnEndʼþÖв»ÄÜÓÃsession("pass")À´´úÌæsession.contents("pass")£¨ÒÔÏÂÓÐÏ꾡˵Ã÷£©¡£

¡¡¡¡ËÄ¡¢±¾ÎÄʵÀýÖÐÖµµÃÒýÆð×¢ÒâµÄÁ½µã

¡¡¡¡¢±OnEndʼþÀïµÄsession.contents

¡¡¡¡¸Õ¿ªÊ¼½Ó´¥global.asaµÄÅóÓѾ­³£»á½«ÉÏÃæSession_OnEndʼþÀïµÄ

¡¡¡¡if session.contents("pass") then¡¡Ð´³É

¡¡¡¡if session("pass") then£¬

¡¡¡¡ÕâÑùµÄ»°ÏµÍ³²»»áÌáʾ´íÎ󣬵«ÊÇÓÀÔ¶Ò²²»»áÖ´ÐÐthenºóÃæµÄÄÚÈÝ£¬ÕâÊÇÒòΪÔÚOnEndʼþÀï½ûֹʹÓÃSession¶ÔÏ󣬵«ÊÇ¿ÉÒÔÓÃSession¶ÔÏóµÄ¼¯ºÏÀ´µ÷ÓÃsession±äÁ¿¡£ÒòΪIIS²¢Ã»ÌáʾÈκδíÎóÐÅÏ¢£¬ËùÒÔ±ÊÕßÔø¾­ÔÚÕâÉÏÃæÀË·ÑÁ˺ܶàʱ¼ä¡£ÔÚ´ËÏ£Íû´ó¼ÒÒýÒÔΪ¼ø£¡

¡¡¡¡¢²Application_OnStartʼþÀïÓÃServer.MapPath»ñÈ¡Êý¾Ý¿âµÄÎïÀíµØÖ·Ê±Ó¦Ê¹Óþø¶ÔµØÖ·ÎªÁË˵Ã÷Õâ¸öÎÊÌ⣬´ó¼Ò¿ÉÒÔ×ö¸öʵÑ飺½«ÉÏÃæApplication_OnStartʼþÀïµÄ

¡¡¡¡application("db")=Server.MapPath("\bbs.mdb")¸ÄΪ:

¡¡¡¡application("db")=Server.MapPath("bbs.mdb")

È»ºóÔÚd:\inetpub\wwwroot\Ŀ¼Ï½¨Á¢Ò»¸ötest×ÓĿ¼£¬Ð´Ò»¸ötemp.aspÔÚtestĿ¼Àï¡£

¡¡¡¡====test.asp====

¡¡¡¡£¼£¥response.write application("db")£¥£¾

¡¡¡¡================

ÔÙ½«temp.asp¿½±´Ò»·Ý·ÅÔÚ¸ùĿ¼Ï£¨d:\inetpub\wwwroot\£©¡£ÓüÇʱ¾´ò¿ªglobal.asa£¬ÔÙ´ò¿ªÁ½¸öä¯ÀÀÆ÷£¬ä¯ÀÀÆ÷AÊäÈëµØÖ·http://localhost/temp.asp£¬°´»Ø³µ£¬½«ÔÚä¯ÀÀÆ÷ÉÏÊä³ö£º

¡¡¡¡d:\inetpub\wwwroot\bbs.mdb

È»ºó£¬ÔÚ¼Çʱ¾µÄ´°¿ÚÉϵã"Îļþ"²Ëµ¥£¬Ñ¡"±£´æ"£¨Ê¹global.asaµÄÐÞ¸Äʱ¼ä¸Ä±ä£¬´Ó¶øÊ¹IISÖØÆô¶¯ËùÓзþÎñ£©£¬ÔÙÔÚä¯ÀÀÆ÷BÊäÈëµØÖ·http://localhost/test/temp.asp£¬°´»Ø³µ£¬ÔÚä¯ÀÀÆ÷ÉÏÊä³öµÄÊÇ£º

¡¡¡¡d:\inetpub\wwwroot\test\bbs.mdb

global.asaÎļþËäÈ»ÊÇ·ÅÔÚÕ¾µã¸ùĿ¼Ï£¬µ«ÊÇÈç¹ûÔÚserver.mappathÖÐʹÓõÄÊÇÏà¶ÔµØÖ·£¬¶ø´¥·¢Application_OnStartʼþµÄÓû§µÚÒ»´Î·ÃÎʵÄÒ³ÃæÓÖ²»ÊÇÊôÓÚ¸ùĿ¼µÄ»°£¬µÃµ½Êý¾Ý¿âµÄÎïÀíµØÖ·½«²»»áÊÇÆÚÍûµÄ½á¹û£¬Ï£Íû´ó¼ÒÒªÌØ±ðСÐÄ¡£

ÔðÈα༭£ºadmin
±¾ÎÄÒýÓõØÖ·£º http://www.3pcode.com/asp/2004/10/383.htm
Ïà¹ØÎÄÕÂ