Программа, используемая в обычной чатской комнате, а именно в программе чата, не использует базу данных для ее основного структурного принципа. Так какая технология используется? Мы знаем, что функция переменной сеанса в переменной ASP заключается в записи информации одного пользователя и может отслеживать поведение пользователя; Функция объекта приложения может обеспечить обмен информацией между несколькими пользователями сайта на странице.
Можно представить, что в текущей программе чата участник чата является переменной сеанса, а разговоры между участниками чата обмениваются и отображаются в качестве переменных приложения, чтобы каждый участник мог их видеть.
Затем давайте использовать очень классическую программу для понимания и анализа.
1, чат.asp
<%If refcure.servervariables ("request_method") = "Get", затем%> <form method = "post" action = "cat.asp"> <input type = "text" name = "nick" value = "your name"> <p> <input type = "отправить" value = "in"> <p> <input type = "hidden" name = "log" size = "20" value = "1"> </form> <%Response.end Еще Response.clear тусклый разговор Если запрос.form ("nick") <> "" Тогда Session ("nick") = request.form ("nick") Конец, если %> <form method = "post" action = "chat.asp" name = form1> <%= Session ("nick")%> говорить: <input type = "text" name = "talk" size = "50"> <br> <input type = "Отправить" value = "отправить"> <input type = "сбросить" value = "cancel"> </p> </form> <a href = "CHAT.asp"> оставить </a> <br> <% Если request.form ("log") <> 1 then Если trim (request.form ("talk")) = "" then talk = session ("nick") & "Я хочу дать вам небрежный путь, не сказав ни слова" Еще talk = trim (request.form ("talk")) Конец, если Application.lock Application ("show") = "from" & request.servervariables ("remote_addr") & "" & session ("nick") и "сказал" & Time & "& talk &" <br> "& Application (" Show ") Application.unlock Response.write Application ("Show") Конец, если %> <%Конец, если%> |
Краткое объяснение:
1. Функция <%if refce.servervariables ("request_method") = "Get", тогда%> - это определить, как принимается текущая страница. Если это метод получения, будет отображаться страница формы «требует прозвища». Поскольку метод тихого принятия страницы получается, когда вы вводите адресную строку URL -адреса непосредственно, то есть, когда нет информации, вы должны отобразить требование «ввести прозвище».
2. <input type = "hidden" name = "log" size = "20" value = "1"> связано со следующим, если request.form ("log") <> 1 Тогда: Очевидно, что первый раз, когда вы введете никнам, будет отправлен спрятанный домен журнал. Однако, как первая запись, нет никакого утверждения для выступления, поэтому, когда считается, что принятое значение журнала не составляет 1, то есть, это не первый раз, когда он входит в систему), будет выполнена внутренняя программа отображения чата.
3. trim (request.form ("talk")) = "", TRIM - это функция: удалить пространства до и после строки. Сначала есть также rtrim (): удалить пространства после строки; ltrim (): удалите пространства перед строкой.