asp.net 统计显示在线访问人数程序代码

在线用户访问人数,也就是说,要为网站写一个计数器,计数器的初始值为0,网站一开始运行时(Application_Start),就开始统计,当有用户访问时(Session_Start)计数器加1,当用户访问离开时(Session_End)计数器减1。

在程序开始时,定义一个计数器,初始值为0

 代码如下 复制代码

 
 Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs on application startup
       
        Application("OnlineVisitors") = 0
    End SubView Code

当有用户访问网站时:

 代码如下 复制代码

Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs when a new session is started
       
        Application.Lock()
        Application("OnlineVisitors") = DirectCast(Application("OnlineVisitors"), Integer) + 1
        Application.UnLock()
    End Sub

当用户离开网站时:

 代码如下 复制代码
 Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
        ' Code that runs when a session ends.
        ' Note: The Session_End event is raised only when the sessionstate mode
        ' is set to InProc in the Web.config file. If session mode is set to StateServer
        ' or SQLServer, the event is not raised.
       
        Application.Lock()
        Application("OnlineVisitors") = DirectCast(Application("OnlineVisitors"), Integer) - 1
        Application.UnLock()
    End Sub

上面两个Session_Start和Session_End方法中,Insus.NET有使用Application.Lock和Application.Unlock方法,是为了防止多个线程同时改变这个变量,在变更计数器时,先把它Lock起来,更变完毕,再Unlock。

把Global.asax文件保存,在网页中需要显示网站在线访问人数的位置:

 代码如下 复制代码

 <%= Application("OnlineVisitors").ToString()%>

测试测试,测试过程中,Insus.NET有使用了两个浏览器,这样是为了让网站获取不同的进程访问者。而每个浏览器打开不同的窗口,所获得到的数据变量。

时间: 2024-10-23 08:24:52

asp.net 统计显示在线访问人数程序代码的相关文章

Asp下实现限制IP访问的程序代码_应用技巧

<% ''获取访问者的地址 ip=Request.ServerVariables("REMOTE_ADDR")  ''允许的IP地址段为10.0.0.0-10.68.63.255 allowip1="10.0.0.0" allowip2="10.68.10.71" response.write checkip(ip,allowip1,allowip2) function checkip(ip,allowip1,allowip2) dim c

php 在线切图程序代码

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-

asp.net中WebBrowser获取post数据程序代码

程序代码  代码如下 复制代码 private void Form1_Load(object sender, EventArgs e) {     webBrowser1.Navigate("about:blank"); //必需,否则WebBrowser.ActiveXInstance值为null     SHDocVw.WebBrowser wb = (SHDocVw.WebBrowser)webBrowser1.ActiveXInstance;     wb.BeforeNavi

asp.nep设计IP地址访问限制程序

ip添加页是用了一个ListBox, TextBox,两个Button 而在其他的页上则直接用当前IP对比数据库中的IP,代码如下! 限制IP添加页HTML代码 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ip.aspx.cs" Inherits="admin_ip" %> <!DOCTYPE html PUBLIC "-//W3C

Asp.net实时显示文本框字数实现代码_实用技巧

复制代码 代码如下: <script language="javascript" type="text/javascript"> function countNum() { var count=document.getElementById("txtText").value.length; document.getElementById("lblCount").value=count; } </script&

asp.net多图片上传实现程序代码_实用技巧

前台代码如下: 复制代码 代码如下: <% @ Page Language="C#" CodeFile="UploadImg.aspx.cs" Inherits="NetAdmin_APicture_UploadImg" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xht

Asp.net中C#获取星期几的程序代码

例子  代码如下 复制代码 lbDay.Text = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetDayName(DateTime.Now.DayOfWeek); 例子1  代码如下 复制代码 string[] Day = new string[] { "星期日", "星期一", "星期二", "星期三", "星期四",

asp sql安全过滤及防注入程序代码

'************************************************** '函数名:ReplaceBadChar '作  用:过滤非法的SQL字符 '参  数:strChar-----要过滤的字符 '返回值:过滤后的字符 '************************************************** function ReplaceBadChar(strChar)  if strChar="" then   ReplaceBadCh

asp.net中C#创建泛型对象程序代码

 代码如下 复制代码 using System; using System.Collections.Specialized; using System.Reflection; using System.Web; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Person person = CreateInstance<Person>("name=dnawo&a