Давайте сначала создадим новую базу данных ACCESS.
Содержание
Название таблицы: Зай
Поля
1.ip
2.время
Создайте файл index.asp.
Тогда следуйте процедуре ниже!
<%
'============================================== = ============================================== =
'
'************************ Программа онлайн-подсчета посетителей Bingling V2.0 ***************** *** **********
'
'Программа этого сайта самостоятельно разработана компанией "Bingling Studio" - Ice Cream Swordsman! Пожалуйста, уважайте плоды своего труда
'
' "Bingling Studio"─━╃→Создайте сильную личность
'
'* Автор: Мечник-мороженое
'* Веб-сайт: http://www.blbcn.com.
'* Электронная почта: [email protected]
'* QQ:68156987
'* Адрес: Уси, Цзянсу.
'********************************************** * ******************************
'
'Авторское право·Плагиат и незаконное присвоение будут расследованы
'
'============================================== = ============================================== =
'---------Определение переменных
димры
тускнеть
тусклый тайм-аут
тусклый х
тусклый контакт
димдбпуть
'---------Конец определения переменных
'---------Предлагаемая ссылка на базу данных
set conn=server.createobject(adodb.connection)
DBPath = Server.MapPath(zai.mdb)
conn.Open driver={Драйвер Microsoft Access (*.mdb)};dbq= & DBPath
'---------Установление связи с базой данных завершено
'---------Создание нового объекта RS базы данных
установите rs = server.createobject(adodb.recordset)
'---------Создание объекта RS базы данных завершено
'---------Прочитайте IP-адрес клиента
ip = Request.ServerVariables(HTTP_X_FORWARDED_FOR) 'Если другая сторона использует прокси-сервер для доступа в Интернет, используйте Request.ServerVariables(HTTP_X_FORWARDED_FOR), чтобы получить реальный IP-адрес другой стороны. Если другая сторона не имеет доступа к Интернету через прокси-сервер. , значение IP пусто.
If ip = then ip = Request.ServerVariables(REMOTE_ADDR) 'Если значение IP пусто, получить адрес его локального клиента
'---------Чтение IP завершено
'---------Прочитайте количество нового контента, добавленного в базу данных за последние 20 минут, сгруппируйте по ip-таблице. Значения IP такие же, как 1
sql=выбрать IP из zai, где время >= dateadd('n',-20,now()) группировать по IP
rs.Open sql,conn,1,1
zai=rs.RecordCount
rs.Close
'---------Получить количество людей онлайн
'---------Проверить, есть ли уже такое же значение в базе данных, если нет, x=да, если нет, x=нет
sql=выберите ip из zai, где ip=' & ip & '
rs.Open sql,conn,1,1
если rs.eof и rs.bof, то
х=да
еще
х=нет
конец, если
RS.закрыть
'--------Приговор завершен
'--------Если в базе данных нет такого значения, добавьте новое значение
if x=yes then' Если такого IP нет, добавить запись
sql=выбрать топ 1 * из zai
rs.Open sql,conn,1,3
rs.AddNew
rs(ip)=ip
rs(время)=сейчас()
RS.обновление
RS.закрыть
else 'Если есть этот IP, измените время на текущее время
sql=select * from zai, где ip=' & ip & '
rs.Open sql,conn,1,3
rs(время)=сейчас()
RS.обновление
RS.закрыть
конец, если
'--------Судите, что присоединение завершено
'--------Удалить значение, добавленное 20 минут назад
таймаут = dateadd(n, -20, сейчас())
sql=delete * from zai, где time < # & timeout & #
conn.Выполнить sql
'--------Удаление завершено
'--------Закройте объект данных
установить rs=ничего
конн.Закрыть
установить соединение = ничего
%>
document.write(Всего <%=zai%> человек в сети)
ХОРОШО!
Сделанный!