Èý¡¢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ʼþµÄÓû§µÚÒ»´Î·ÃÎʵÄÒ³ÃæÓÖ²»ÊÇÊôÓÚ¸ùĿ¼µÄ»°£¬µÃµ½Êý¾Ý¿âµÄÎïÀíµØÖ·½«²»»áÊÇÆÚÍûµÄ½á¹û£¬Ï£Íû´ó¼ÒÒªÌØ±ðСÐÄ¡£

