В прошлый раз мы с Вами делали гостевую книгу. Научились добавлять записи и обновлять ее. Чем же чат отличается от гостевой книги ??? Только тем, что он периодически обновляется вот и все. Это гостевая книга с самовольным обновлением. Значит наша задача научиться обновлять документ через заданное количество времени.
Это как раз и легко сделать. Самое интересное, что от IIS требуется только выдавать данные в ответ на запросы и все. Остальное будет делать сам браузер. Он должен сам запрашивать данные с определенным периодом. Как это сделать ???
Все это кому как нравится, только поддержка ActiveX самое ненадежное и тяжелое. Нужно указывать CLSID. Быть уверенным, что этот объект есть в операционной системе. А вот такой уверенности нет. Я не нашел элемент TIMER в WINDOWS 2000 по CLSID взятому из WINDOWS 95. Так что проблем много. Опираться на Exploler кажется немного надежнее. С JAVA тоже не очень просто. То есть написать-то можно, только класс должен быть на компьютере и так далее. Вобщем VBSript самое то. Смотрим код:
<html> <FORM NAME="ADD" METHOD="POST" ACTION="ADD.idc"> <INPUT TYPE="SUBMIT" VALUE="ADD"> <INPUT NAME="Name" VALUE="Noname"> <INPUT NAME="Message" VALUE="Hello"> <INPUT NAME="Answer" VALUE=":-)"> </FORM> <SCRIPT LANGUAGE="VBScript"> MyVal=SetTimeout("Navigate(Location)",3000) </SCRIPT> <%begindetail%> <p> <%Name%> <%Message%> <%Answer%> <%enddetail%> </html>
Из VBScript можно напрямую обращаться к объектам Exploler, у этих объектов есть методы Navigate, то есть двигаться и Location это текущий адрес. Устанавливается таймер методом SetTimeout. Вот и все, через каждые 3 сек. страница будет обновляться. Конечно надо бы сделать фреймы и вынести форму за пределы обновления, но это же раздел про IIS не правда ли ????
Прикол весь в том, что разговор будет документирован в MDB. Это навело меня на ряд мыслей. Во-первых все разговоры администартор может просмотреть и только он !!! Ну или кто имеет доступ к конкретному файлу. Если доля общения людей через компьютер будет увеличиваться, то возникает возможность собрать базу данных по разговорам людей. Честно говоря осознание того, что пословица "Слово не воробей - вылетит не поймаешь" приобретает вполне реальный смысл :-) Вот поэтому в передаче "Антропология", где показан чат на экране ведущий может и не смотреть на экран, все равно прочитает :-) И то, что там написано останется у него. Уже нельзя надееться, что что-то будет забыто :-(((
Чтобы Вы не болтали в чате в приватах, потому что вы не наедине :-))) Вас как минимум трое. Вы - собеседник - Администратор.