Primero creemos una nueva base de datos de ACCESS.
El contenido es
Nombre de la tabla: zai
Los campos son
1.ip
2.tiempo
Crear un archivo como index.asp
¡Entonces siga el procedimiento a continuación!
<%
'=================================================== = =================================================== =
'
'************************ Programa de conteo de personas en línea Bingling V2.0 ***************** *** **********
'
'El programa de este sitio web es producido de forma independiente por "Bingling Studio" - Ice Cream Swordsman. Por favor respeta los frutos de tu trabajo.
'
' "Bingling Studio"─━╃→Crea personalidad con fuerza
'
'* Autor: Espadachín helado
'* Sitio web: http://www.blbcn.com
'* Correo electrónico: [email protected]
'* QQ:68156987
'* Dirección: Wuxi, Jiangsu
'************************************************ * *******************************
'
'Copyright·Se investigará el plagio y la apropiación indebida
'
'=================================================== = =================================================== =
'---------Definir variables
atenuar
atenuar
tiempo de espera oscuro
tenue x
conexión tenue
rutadimdbpath
'---------Fin de la definición de variables
'---------Enlace de base de datos sugerido
establecer conexión=servidor.createobject(adodb.conexión)
DBPath = Servidor.MapPath(zai.mdb)
conn.Open driver={Controlador de Microsoft Access (*.mdb)};dbq= & DBPath
'---------Se completó el establecimiento del enlace de la base de datos
'---------Crear un nuevo objeto RS de base de datos
establecer rs = servidor.createobject(adodb.recordset)
'---------Se completó la creación del objeto RS de la base de datos
'---------Lee la dirección IP del cliente
ip = Request.ServerVariables(HTTP_X_FORWARDED_FOR) 'Si la otra parte usa un servidor proxy para acceder a Internet, use Request.ServerVariables(HTTP_X_FORWARDED_FOR) para obtener la IP real de la otra parte si la otra parte no accede a Internet a través de un servidor proxy. , el valor de IP está vacío.
Si ip = Entonces ip = Request.ServerVariables(REMOTE_ADDR) 'Si el valor de IP está vacío, obtenga su dirección de cliente local
'---------Lectura de IP completada
'---------Lee la cantidad de contenido nuevo agregado a la base de datos en los últimos 20 minutos, los valores de IP del grupo por ip-table son iguales a 1
sql=seleccione ip de zai donde hora >= dateadd('n',-20,now()) grupo por ip
rs.Abrir sql,conn,1,1
zai=rs.RecordCount
rs.Cerrar
'---------Obtener el número de personas en línea
'---------Comprueba si ya existe el mismo valor en la base de datos, si no, x=yes, si no, x=no
sql=seleccione ip de zai donde ip=' & ip & '
rs.Abrir sql,conn,1,1
si rs.eof y rs.bof entonces
x=si
demás
x=no
terminar si
rs.cerrar
'--------Sentencia completada
'--------Si no hay el mismo valor en la base de datos, agregue un nuevo valor
si x=yes entonces' Si no existe tal IP, agregue un registro
sql=seleccione los 1 mejores * de zai
rs.Abrir sql,conn,1,3
rs.AñadirNuevo
rs(ip)=ip
rs(hora)=ahora()
rs.actualización
rs.cerrar
else 'Si existe esta IP, cambie la hora a la hora actual
sql=select * de zai donde ip=' & ip & '
rs.Abrir sql,conn,1,3
rs(hora)=ahora()
rs.actualización
rs.cerrar
terminar si
'--------Juzga que la unión está completa
'--------Elimina el valor agregado hace 20 minutos
tiempo de espera = fechaadd(n, -20, ahora())
sql=eliminar * de zai donde tiempo < # & tiempo de espera & #
conexión.Ejecutar sql
'--------Eliminación completada
'--------Cerrar el objeto de datos
establecer rs = nada
conexión.Cerrar
establecer conexión = nada
%>
document.write(Total <%=zai%> personas en línea)
¡DE ACUERDO!
¡Hecho!