Гостевая
Форум
Разделы
Главная страница
Js скрипты
Php скрипты
Html шаблоны
Книги по Web дизайну
Статьи


Главная страница статей --> Советы по фотошопу, графике и хитрости в построении php кода

Создание простого чата на ASP

Источник: realcoding.net

Данная статья является пробным камнем в огород ASP-чатстроительства... в дальнейшем возможна организация полного цикла подробных статей о создании целостного чат-сервера на ASP...

Итак, требуется создать чат-сервер на ASP - ну так давайте сразу из огня да в полымя...

Во-первых, сразу разберемся - а что такое чат с точки зрения программиста? Да нет ничего проще - имеем один общедоступный массив, в который, по идее, должны складываться все фразы, посланные каждым пользователем и плюс механизмы для передачи от каждого пользователя его посланий в этот массив и наоборот - передачи всех (или не всех) данных этого массива всем (или, опять же, не всем) пользователям. Вот, если не все, то почти все...

Теперь посмотрим, как сие нам можно без особых потугов создать на ASP... Можно много и по разному отзываться о программистах Microsoft да и о самой конторе в целом, но вот за объект Application в данном случае можно только сказать спасибо. И правда, для создания общедоступного массива данных в ASP лучше не придумаешь. Итак, создаем файл global.asa (если он еще не создан) и в Application_OnStart добавляем следующий код:

dim MyMessArray() Redim MyMessArray(20) Application(MessageArray)=MyMessArray

Таким образом мы создали массив MessageArray размерностью 20. Именно в нем и будут храниться все фразы пользователей в чате (размерность, естественно, зависит от вас, но, во-первых, врядли хотя бы четверти пользователей вашего чат-сервера ну очень сильно нужно будет сразу наблюдать на экране 50 или 100 фраз сразу, а, во-вторых, ресурсы сервера тоже не безграничны).

В принципе, на этом можно и закончить :-). Ну, почти закончить. А в виду того, что только три китайских почти и только в китае берут за одно целое, мы продолжим.

Сама организация записичтения, естественно, просто как два байта. Берем фразу, полученную от пользователя и пишем ее в наш массив:

dim NewMess() Redim NewMess(20) usermess=Request("message")
messArray=Application("MessageArray")
for i=0 to 19 NewMess(i+1) = messArray(i)
next NewMess(0)=usermess Application.Lock
Application("MessageArray")=NewMess Application.UnLock

Если разобрать вышеуказанный код построчно, то:

  • объявили массив NewMess
  • в переменную usermess занесли данные, полученные от пользователя
  • переписали содержимое массива MessageArray, созданного на базе объекта Application, в свежеобъявленный массив NewMess
  • далее произвели сдвиг вниз на одну позицию
  • в нулевую позицию записали полученные данные от пользователя
  • залочили Application
  • переписали массив NewMess в MessageArray
  • разлочили Application

Со чтением и выводом на экран пользователей проще:

messArray=Application("MessageArray") for i=0 to 20 Response.Write messArray(i)
Response.Write ("<br>") Response.Write Chr(13) next

...и построчно:

  • переписываем содержимое общедоступного массива MessageArray в messArray
  • и в цикле выводим по очереди все фразы из массива, незабывая втыкать возврат каретки для браузера в виде
    и для облегчения просмотра в виде Chr(13) :-))

Ну вот теперь точно все, разве что за исключением определенных тонкостей, на разработку и реализацию которых может уйти вся жизнь :-)). Самое главное здесь, не забыть, что у вас должно присутствовать, как минимум, или два окна (но сие, по моему - бред) или два фрейма - один с формой ввода и, соответственно, с кодом для записи фраз в общедоступный массив и, второй самообновляющийся фрейм (окно), т.е. в данном фреме (окне) должно быть указано в эелементе META конкретное значене Refresh, с кодом вывода массива...



Похожие статьи:
- Приватность в Интернет
- Подпись или аватар на пхп
- Сбор статистики на PHP
- Классы и объекты в РНР со Штирлицом и Мюллером
- Как назвать Web-сайт?
- Дядя Гугл — великан
- Разработка фирменного стиля
- Сверхдинамичные веб-интерфейсы
- Оптимизация для MSN
- RSS генератор
- Шаблоны в PHP для чайников
- Гостевая книга на PHP
- В каких поисковиках надо раскручиваться?


Оглавление | Обсудить на форуме | Главная страница сайта | Карта сайта |
[0.001]