Файл Global.ASA является необязательным файлом. Пользователи могут объявлять объекты сеанса и всего приложения в указанном скрипте событий. Сегодня редактор канала Fooxin Technology специально собрал и разобрал соответствующую информацию. Заинтересованные друзья могут пойти в следующую статью, чтобы узнать больше!
Мы все знаем, что .asa - это имя суффикса файла. Это аббревиатура для Active Server Application.
На самом деле это необязательный файл, в котором писатель программы может указать сценарии событий и объявлять объекты с помощью сеанса и приложений. Содержание этого файла не используется для отображения пользователю, а для хранения информации о событиях и объектах, используемых во всем мире приложением. Этот файл должен храниться в корневом каталоге приложения. Каждое приложение может иметь только один файл Global.ASA.
Наиболее распространенным заблуждением в отношении файлов Global.asa является то, что его можно использовать в качестве библиотеки для функций общего использования и подпрограмм. Файл Global.ASA может использоваться только для создания ссылок и захвата запуска объектов, а также конечных объектов приложения и объектов сеанса.
Доступ к файлу Global.ASA доступен на основе событий на уровне сеанса и вызывается в следующих трех случаях:
Стандартный формат файла Global.ASA заключается в следующем:
<Script language = "vbscript" runat = "server"> sub application_onstart 'application_onstart run end sub subsion_onstart, впервые заканчивая домашнюю страницу приложения' session_onstart end sub subs sesess_onend 'session_onend end end subsion_onend' session_onend end sub application_onend 'run run end end sub sub sub sub sub web sub web sub web sub web ren run end end end end end end end end end end end end end end scip run ind end end end end end end end end end
1. session_onstart
Давайте сначала рассмотрим код, который управляет пользователями ввести страницу:
1. Global.asa (помещается в корневой каталог отладчика виртуального каталога)
<Script language = "vbscript" runat = "server"> sub session_onstart ', пока пользователь входит в этот сайт в первый раз, он перейдет на enpass homepage.redirect (http://www.jb51.net) end sub </script>
Затем отлаживайте любые файлы в текущем виртуальном каталоге, и вы обнаружите, что все страницы прыгают на http://www.webjx.com/ <
Благодаря этому примеру «принудительного входа на определенную страницу» можно представить, что это очень необходимо, когда должна соблюдать домашнюю страницу.
Давайте продолжим наблюдать за событиями session_onstart и session_onend с примером «числа онлайн -пользователей»
2. session_onend
2. Global.asa (помещается в корневой каталог отлаженного виртуального каталога)
<Script language = vbscript runat = server> sub application_onstart 'Начальное значение - 0 Application ("Online") = 0 End Sub session_onstart' Access Access Access 1 Application.lock ("Online") = Application ("Online") + 1 Application.unlock Application ("Online") - 1 Application.Unlock End Sub </script>3. Online.asp
<%if refce.queryString ("logout") = "true" then session.abandon () response.end end, если%> Есть в настоящее время <%= Application ("Online")%> Online <a href = "Online.asp? logout = true"> exit </a>Вы обнаружите, что на странице есть только одно приложение («онлайн»), и это также упоминается. Так откуда взялась его ценность? Это ключ к файлу Global.ASA. Вы можете открыть Windows в этой машине, закрыть Windows или отладку в выходе из двух методов.
3. Продолжайте уточнить его
Вы обнаружите, что эффекты закрытия окна после подключения «выхода» отличаются от непосредственного закрытия окна. Поскольку сеанс существует во времени, при непосредственной закрытии окна событие session_onend не может быть вызвано, так как, как можно реализовать эта почти невозможная идея?
Как мы все знаем, когда веб -страница закрыта, она может сопровождаться событием на загрузке. Так до тех пор, пока нагрузка может быть выполнена, разве это не все, что нам нужно? Скажи меньше ерунды, изменить онлайн.asp
<%if refct.queryString ("logout") = "true", затем session.abandon () response.end end, если%> <body onUnload = javascript: window.open ("exit.asp")> Есть <%= application ("Online")%> Online <a href = "Online.asp?Обратите внимание, что когда Online.ASP будет загружено, exit.asp будет открыт. Затем просто установите session.abandon () на exit.asp и не в порядке.
exit.asp
<%session.abandon ()%> <script> self.close () </script>
Конечно, сценарий сценария был добавлен, чтобы закрыть себя сразу после того, как сеанс был вычеркнут. Теперь достаточно веб -приложения со статистикой онлайн.
4. углубленное исследование Global.asa
Из приведенной выше отладки вы узнаете из одного примера и примените его к другим и обязательно зададите вопрос: как контролировать количество зарегистрированных пользователей в Интернете? Давайте прочитаем следующие документы один за другим:
4. Global.asa (помещается в корневой каталог отладчика виртуального каталога)
<Script language = "vbscript" runat = "server"> sub application_onstart application ("online") = 0 end sub sesession_onstart end sub sub session_onend if session.contents ("pass"), затем определите, является ли это зарегистрированным пользователем session_onend application.lock приложение ("онлайн") = приложение ("Online")-1 Приложение End end sub anpative_ond enpubt_ons enpubt_ enpubt enf.Обратите внимание, что блок session_onstart в этом Global.asa не вызывает никаких событий.
Потому что, как только пользователь обращается к серверу, независимо от того, входит ли пользователь вход или нет, будет создано событие Onstart. Теперь все, что вам нужно, это войти в онлайн -пользователя, поэтому вы не можете добавить 1 в событие OnStart.
Кроме того, поскольку событие Onend будет сгенерировано независимо от того, закончится ли сеанс зарегистрированного пользователя (если посетитель посещает сервер, но не входит в систему, событие Onend также будет сгенерировано после окончания сеанса), поэтому оператор IF используется в событии Session_onend, чтобы определить, является ли это событием Onend в регистрации пользователя. Если это так, количество людей в Интернете будет сокращено на 1.
И стоит отметить, что использование Session.contents («Pass») связано с тем, что использование объектов сеанса запрещено в событии Onend, но переменную сеанса можно назвать с помощью коллекции объектов сеанса. Другими словами, вы не можете написать сеанс («Pass») напрямую, но вам нужно написать Session.contents («Pass»).
5. Login.asp
В настоящее время зарегистрированный участник <%= Application ("Online")%>.
<a href = "login.asp? logout = true"> exit </a> <%else%> <form action = "login.asp" method = "post"> <input type = "text" name = "name"> <br> <input type = "password" name = "pwd"> <br> <input type = "Отправить" name = "value =" veop "> <%end if%
Просто обнаружите, что когда имя Cnbruce и пароль - Cnrose, сеанс («Pass») = True, которое генерируется, который оценивается в Global.asa.
5. Продолжайте использовать свое воображение
Подумайте об этом, подумайте об этом снова. Недостаточно просто подсчитать, сколько людей находится в Интернете, и это также требует оценки статуса онлайн -пользователя.
Вы можете представить основной метод. Когда пользователь входит в систему, установите онлайн на 1 in login.asp (загрузите, если есть база данных), но когда пользователь в автономном режиме, установите онлайн на 0. Чтобы улучшить его, вам необходимо изменить событие Session_onend и установить онлайн на 0 в событии (то же значение будет загружено) ...
Конечно, Global.asa намного больше, чем это. Но нам не нужно спешить, чтобы овладеть всем этим сейчас. Когда мы вступим в контакт с базой данных, мы вернемся, чтобы посмотреть на нее и продолжим изучать файл. Я считаю, что к тому времени мы обязательно много поймем. Итак, давайте сначала поймем выше.
Я надеюсь, что благодаря этой статье я кратко проанализирую использование файлов Global.asa ASP, которые могут принести вам больше помощи. Более технические знания будут доступны в сети канала Wuxin Technology Channel!