Поиск

Вход на сайт

Файлы

  • Игры 240х400 - Сборник из 72 игр для сенсорных телефонов
  • Windows 7 активатор
  • WallHack для Call of Duty 4 Modern Warfare[multiplayer]
  • Обои для Samsung s5230 720х400
  • Kassy 0.3 + crack (печать товарных чеков)
  • Jimm 0.6.0
  • Mail Agent на телефон (jar)
  • Механоиды гонки на выживание nocd
  • Читы CS 1.6 - Wallhack v4
  • Tequilacat Book Reader 2.2.8
  • Обои для Samsung s5230 720х400
  • Обои для Samsung s5230 720х400
  • l4d_update_1013_to_1014
  • Windows 7 Activator Pack
  • Сборник виджетов для SAMSUNG S5230
  • Шпаргалка по русскому языку
  • Ad Muncher 4.9 Build 31235
  • TMS Component Pack v5.4.2.0 (C++Builder, Delphi) Full Source
  • Архив файлов для Guitar Pro
  • Шпаргалка по математике
  • KKiller v3.4.4
  • Решатель транспортных задач
  • Radmin_3.3_+_Key
  • Sound_Forge_9.0a + crack
  • GPU-Z 0.3.8 (RUS/2009)
  • Чит для Battlefield 2 || ArtificialAiming Radar v2.6
  • Игры для Nokia 5800, N97, 5230, 5530, X6 - Игры для смартфонов серии Nokia Touch, с сенсорным экраном 360 x 640 (S60 5th Edition)
  • Читы CS 1.6 - BadBoy v5.0
  • Читы для lineage 2
  • Tom Clancy's Splinter Cell: Conviction Multiplayer patch
  • Каталог статей

    Главная » Статьи » Веб программирование » ASP/ASP.NET

    Знакомство с ASP: счетчик для IIS за 5 минут

    Знакомство с ASP: счетчик для IIS за 5 минут

    Евгений Кондратов (aka Udjin)

    В данной статье будут рассмотрены варианты создания счетчиков для сайтов построенных на базе IIS 3, 4, 5, PWS, GoAhead. Для некоторых счетчиков - любой сервер поддерживающий работу со скрипт - машинами Windows с помощью различных расширений и модулей.(Chili-ASP, ActivePerl). При написании статьи использованы материалы с сайтов:

    Примечание: данный материал рассчитан на начинающих скриптеров, по сему код максимально упрощен с целью облегчения восприятия. Код размещен по принципу "от простого - к сложному"

    Классификация.


    По признаку своей функциональности счетчики можно подразделить на счетчики:

    • с накоплением;
    • в рамках сессии;
    • ементами персонификации;
    • с возможностью дальнейшего анализа информации о клиенте;

    По способу хранения информации:

    • хранение в переменных сессии (приложения);
    • хранение в файле на стороне сервера;
    • хранение в файле на стороне клиента;
    • хранение в базе данных;
    • комбинированные;

    По способу визуализации:

    • текстовые;
    • графические;
    • информеры ( как комбинация первых двух );

    Cчетчик от Microsoft


    Возможности: счетчик с накоплением, поддержка "виртуальных" сайтов, отдельных asp-страниц.

    Для создания данного счетчика необходимо с сайта Microsoft скачать серверный компонент PageCounter и установить его. Весь код счетчика оформлен в виде ISAPI-dll (распространяется вместе с исходными текстами) и число обращений к конкретной странице или инициалиазация/сброс счетчика вызываются как метод серверного объекта PageCounter.

    Для установки счетчика на сервер необходимо скопировать PageCnt.dll в каталог \InetPub\ASPSamp\Components\PageCnt\DLL\i386 и зарегистрировать его: regsvr32 PageCnt.dll В случае, если Вы планируете подсчитывать обращения к нескольким виртуальным сайтам, Вам необходимо конфигурировать их как приложения.

    Счетчик поддерживает 2 метода HITS и RESET

    Код инициализации счетчика для конкретного сайта:
    Распологать его лучше всего в верхней части страницы, в первых строках.

    <%
    Set MyPageCounter = Server.CreateObject("IISSample.PageCounter")
    HitMe = MyPageCounter.Hits
    %>

    Отображение количества заходов:
    Данный фрагмент размещайте сообразуясь с дизайном своего сайта.

    <% =HitMe %> 

    Для подсчета на конкретной странице сайта код несколько изменится:

    <%
    Set MyPageCount = Server.CreateObject("IISSample.PageCounter")
    MyPageCount.PageHit
    HitMe = MyPageCount.Hits
    %> <% =HitMe %>
    или
    <% Set MyPageCounter = Server.CreateObject("IISSample.PageCounter")
    %>
    This Web page has been viewed <%= MyPageCount.Hits %> times.
    <P>
    Page Myscript.asp has been viewed
    <%= MyPageCounter.Hits("/VirtualDir1/Myscript.asp") %> times.

    Для того, чтобы запустить счетчик с какого-либо начального значения (12345) используйте следующий код:

    <%
    =HitMe + 12345
    %>

    Сброс счетчика (RESET).

    <%
    Set MyPageCounter = Server.CreateObject("IISSample.PageCounter")
    MyPageCounter.Reset
    MyPageCounter.Reset("/VirtualDir1/Mypage.asp")
    %>

    Простейшиe счетчики


    Возможности: счетчик с накоплением. Хранит информацию о количестве обращений в текстовом файле.

    Используется объект VBScript (WSH) FileSystemObject.

    Порядок действий.

    1. Создайте текстовый файл c:\mycount.txt
    2. Для инициализации счетчика укажите в текстовом файле начальное значение. На пример 0.
    3. В тело вашей страницы впишите следующий код:
    4. <%
      'Декларирование переменных
      Const ForReading = 1, ForWriting = 2, ForAppending = 8
      Dim fso, f, myCounter
      'Создаем объект
      Set fso = CreateObject("Scripting.FileSystemObject")
      'открываем файл на чтение, и считываем из него ВСЕ содержимое
      'если файл отсутствует, то создаем его (Trye).
      Set f = fso.OpenTextFile("c:\mycount.txt", ForReading, True)
      'отключаем обработку ошибок
      On error resume next
      'считываем содержимое, в случае пустого (Empty)значения
      'присваиваем значение 0 переменной myCounter
      myCounter = f.readAll
      If myCounter = Empty Then
      myCounter = 0
      'если все в порядке, то увеличиваем значение переменной myCounter на 1
      Else
      myCounter = myCounter + 1
      End If
      'открываем файл на запись и обновляем значение счетчика
      Set f = fso.OpenTextFile("c:\mycount.txt", ForWriting, True)
      f.Write myCounter
      'закрываем файл
      f.Close
      'очищаем память
      Set f = nothing
      Set fso = nothing
      %>
    5. В соответствии с дизайном разместите счетчик.
    6. <%
      = myCounter
      %>

    Счетчик с накоплением. Хранит данные в переменных сесии ( приложения ), отображает количество пользователей, находящихся в данный момент на сайте.

    В рут - каталоге сайта создайте файл global.asa

    Код:

    <SCRIPT LANGUAGE=VBScript RUNAT=Server>
    SUB Session_OnStart
    Session.Timeout = 5
    Application.lock
    Application("myCounter") = Application("myCounter") + 1
    Application("visitors") = Application("visitors") + 1
    Application.unlock
    END SUB
    </script>
    <SCRIPT LANGUAGE=VBScript RUNAT=Server>
    SUB Session_OnEnd
    Application.lock
    Application("visitors") = Application("visitors") - 1
    Application.unlock
    END SUB
    </script>

    В теле asp-страницы разместите код:

    <%
    Dim vist, currentcount
    visit = Application("visitors")
    currentcount = Application("myCounter")
    %>

    В соответствии с дизайном поместите счетчик общего числа обращений/текущего количества пользователей

    <%
    = currentcount & "/" & visit
    %>

    Категория: ASP/ASP.NET | Добавил: _Hz_ (04.12.2009)
    Просмотров: 413 | Рейтинг: 0.0/0
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]

    Статистика





    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0

    Ссылки

    dim-dragon.ucoz.ru