Сайт о телевидении

Сайт о телевидении

» » Что такое клиент telnet. Команды Telnet. Чтобы посмотреть текущие параметры клиента Telnet

Что такое клиент telnet. Команды Telnet. Чтобы посмотреть текущие параметры клиента Telnet

Как известно, форум - это средство общения пользователей сети Интернет, и в тоже время, это большой справочник вопросов и ответов определенной тематики, и, пожалуй, ни один современный сайт не может обойтись без форума. В данной статье я расскажу, как можно быстро сделать собственный форум на ASP, причем, для этого не надо никуда ходить, искать и закачивать какие-либо дополнительные программы, и даже вовсе не обязательно быть программистом. Для этого достаточно иметь Windows 2000/XP и комплект программ MS Office, а именно - MS Access. В качестве реактора ASP-страниц, можно использовать обычный Блокнот.

Active Server Pages

ASP (Active Server Pages) - технология динамического создания Web-страниц, разработанная корпорацией Microsoft для серверов Windows NT/2000/XP/2003. Основой синтаксиса ASP является язык программирования высокого уровня - Visual Basic. Если вы ранее работали с Visual Basic, то для вас не составит особо труда разобраться с ASP. Но даже, если вы вообще никогда не встречались с программированием, вам все равно будет не сложно разобраться с ASP, поскольку, как известно, Visual Basic довольно легкий для освоения язык.

Собственный Web-сервер? Легко!

Прежде чем приступать к созданию форума, вам потребуется установить IIS (Internet Information Services) - это профессиональный Web-сервер, разработанный компанией Microsoft. В состав Windows 2000 и Windows XP входит IIS версии 5.0. По умолчанию, IIS не устанавливается, поэтому его нужно установить отдельно. Для этого нажмите «Пуск» => «Панель управления» => «Установка/удаление программ», в появившемся окне, нажмите «Установка Windows». Должно появиться окно компонентов Windows. Выберите «Internet Information Services» и нажмите «Далее».

По завершению установки, в «Панель управления» => «Администрирование», появится ярлык - «Internet Information Services», более того, теперь ваш компьютер может играть роль Web-сервера! Для проверки этого, запустите браузер (например, Internet Explorer) и в строку адреса введите: http://localhost/, после чего откроется Web-узел, созданный по умолчанию IIS. Кроме этого, получить доступ к серверу можно, если в строку адреса ввести http://имя_вашего_компьютера, либо указать локальный IP-адрес - http://127.0.0.1.

Теперь, когда собственный Web-сервер у нас есть, его нужно настроить. Запустите IIS: «Пуск» => «Панель управления» => «Администрирование» => «Internet Information Services».

В появившемся окне отображается структура каталогов вашего Web-узла, а также серверов SMTP и FTP, если данные компоненты были установлены. Разверните список «Веб-узлы» и щелкните правой кнопкой мышки по «Веб-узел по умолчанию», выберите меню «Создать» => «Виртуальный каталог». Появится окно «Мастер создания виртуальных каталогов». Нажмите «Далее», Мастер предложит указать Псевдоним виртуального каталога. Псевдоним должен состоять из латинских символов, напишите, например, «myforum.ru» и нажмите «Далее». Мастер предложит выбрать физический каталог на диске. Нажмите на кнопку «Обзор», в появившемся окне выберите «Диск C:» и нажмите на кнопку «Новая папка», имя папки может также быть любым, но во избежание недоразумений, русские символы использовать не рекомендуется. Чтобы не путаться, назовите ее, например, «first_web_page». Выберите созданный каталог и нажмите «Далее». В появившемся окне поставьте опции «Чтение» и «Запуск сценариев (например ASP)», и нажмите «Далее», а затем «Готово».

Теперь, в списке «Веб-узел по умолчанию» должен появиться только что созданный вами виртуальный каталог - myforum.ru. Вот собственно и все, больше настраивать ничего не требуется.

База данных

Сообщения форума нужно где-то хранить. Обычно для этого используют базы данных. Базы данных бывают разные, но наиболее доступны базы MS Access. Программа MS Access входит в состав MS Office. Если у вас по каким-то причинам MS Access не установлена, ее нужно установить. Для этого нажмите «Пуск» => «Панель управления» => «Установка/удаление программ», в появившемся окне найдите «Microsoft Office» и нажмите на кнопку «Изменить» (либо, «Изменить/Удалить»). В появившемся окне установите опцию «Access» и нажмите на кнопку «Обновить». Процесс установки займет несколько минут. После чего, на Рабочем столе появится иконка «Microsoft Office Access».

Запустите MS Access и создайте новую базу данных. Программа сразу предложит вам сохранить бузу данных, сохраните ее под именем «db.mdb» в созданную ранее папку - «C:\first_web_page». Далее, должно появиться окно управления базой данных.

В разделе «Объекты», выберите «Таблицы» и нажмите «Создание таблицы в режиме конструктора». Добавить следующие поля таблицы:

Закройте окно Конструктора, на предложения сохранить изменения, ответьте «Да» и укажите имя таблицы «tblMessages», на предложение создать ключевые поля, ответьте «Нет».

Всё! База данных готова! Конечно, профессиональные форумы имеют гораздо большее количество полей, но для первого раза этого достаточно.

Программирование

Итак, дело за малым, осталось создать asp-странички, их будет три: default.asp, show.asp и add.asp. Для этого, в папке C:\ first_web_page создайте три обычных текстовых документа (правая кнопка мышки => Создать => Текстовой документ) и переименуйте их в default.asp, show.asp и add.asp. Обратите внимание, чтобы изменить расширение файла (с txt, на asp), необходимо, чтобы в параметрах папки была отключена опция «Скрывать расширения для зарегистрированных типов файлов» (меню папки «Сервис» => «Свойства папки», вклада «Вид»).

Файл default.asp - это основной файл, который будет искать Web-сервер, при обращении к созданному вами виртуальному каталогу (http://localhost/myforum.ru). В этом файле будет отображать список тем форума. Откройте default.asp блокнотом и введите следующий код:

" & _
RS("author_name" ) & " "

RS("date_add" ) & "

" & vbCrLf
"переход к следующей записи
RS.MoveNext
Loop
Else
"тем нету, выводим сообщение об этом
strSubjectList = "

" & _
"Список тем пуст...

"
End If

"закрываем БД
Conn.Close
"удаляем объекты из памяти
Set RS = Nothing
Set Conn = Nothing
%>



Мой первый форум!





Добавить новую тему








Добавить новую тему



Вот, собственно, первая страница и готова! Чтобы проверить ее, запустите браузер и в адресную строку введите: http://localhost/myforum.ru. В браузере должно появиться сообщение: «Список тем пуст…», поскольку база данных, пока еще, не содержит каких-либо данных. Обратите внимание на две ссылки «Добавить новую тему», эти ссылки переводят пользователя на страницу добавления новой темы, т.е. add.asp, как раз ее, вам сейчас и предстоит сделать. Откройте файл add.asp блокнотом и введите следующий код:

0 Then

strSubjectList = _
"

Тема сообщения: " & _
RS("subject" ) & _
"

" & vbCrLf
strSubjectList = strSubjectList & _
" & _
RS("author_mail" ) & "">" & _
RS("author_name" ) & " "
strSubjectList = strSubjectList & "Добавлено: " & _
RS("date_add" ) & "

" & vbCrLf
strSubjectList = strSubjectList & _
"

" & _
RS("main_text" ) & _
"

" & vbCrLf
RS.Close
" выводим ответы
strSQL = "SELECT * FROM tblMessages " & _
"WHERE (parent_id = " & Request("id" ) & ") " & _
"ORDER BY date_add DESC, id ASC"
RS.Open strSQL, Conn, adOpenStatic
If RS.RecordCount > 0 Then
Do Until RS.EOF
If RS.EOF Or RS.BOF Then Exit Do

" & _
RS("author_mail" ) & ""> " & _
RS("author_name" ) & " "
strSubjectList = strSubjectList & "Добавлено: " & _
RS("date_add" ) & "

" & vbCrLf
strSubjectList = strSubjectList & _
"

" & _
RS("main_text" ) & _
"

" & vbCrLf
RS.MoveNext
Loop
Else
strSubjectList = strSubjectList & _
"

" & _
"Нет ответов...

"
End If
Else
strSubjectList = "

" & _
"Тема не найдена...

"
End If
Conn.Close
Set RS = Nothing
Set Conn = Nothing
%>



Мой первый форум!




1) Общие сведения об ASP
ASP (Active Server Pages) – это технология программирования, позволяющая создавать на Web-сервере (с IIS, 1997 г.) динамические интерактивные Web-страницы. ASP представляет собой файлы с расширением *.Asp, содержащие смесь кода HTML, кода сценариев на языке VBScript или JavaScript, средств доступа к БД (ADO), управления внешними COM-объектами и внутренних объектов ASP. Эта технология впервые была реализована в Web-сервере IIS фирмы Microsoft и фактически является интерпретируемым вариантом ISAPI-расширения сервера.

2) Встроенные объекты
ASP включает семь встроенных (не требующих создания и инициализации) объектов, используемых для пересылки HTML-страниц и данных браузеру, извлечения данных, обмена данными с сервером и т.д. среди них:
. Response – пересылает данные клиенту
. Request – обрабатывает данные, поступающие с запросом от клиента.
. Server – обеспечивает взаимодействие с сервером.
. Application – кэширует данные о приложении.
. Session – кэширует данные о браузере.
. ObjectContext – запускает транзакции и управляет их выполнением.
. ASPError – поддерживает работу с ошибками.

3) Особенности ASP
Помимо встроенных, в комплект ASP входит ряд устанавливаемых объектов, часть из которых бывает полезна, а часть незаменима. Так COM объект Dictionary незаменимый.

В отличие от CGI, ASP-сценарий выполняется как внутренний процесс сервера, кроме того, он многопоточен и оптимизирован для работы с большим количеством пользователей. ASP-сценарий начинает выполняться после того, как браузер запросит файл с расширением *.Asp с Web-сервера. Web-сервер посылает вызов встроенному в IIS ASP-механизму обработки (..\System\InetSrv\Asp.Dll), который считывает сценарий и выполняет все встретившиеся команды. В результате генерируется HTML-страница, которая посылается браузеру.

Для того, чтобы с помощью ASP сделать что-либо серьезное на Web-сервере, необходимо создать COM-объекты и использовать их службы (методы). Компоненты ASP Должны использовать модель потоков STA – каждый объект выполняется в контексте собственного потока и защищен от конкурирующих потоков.

4) Доступ к встроенным объектам
Для доступа от создаваемых COM-объектов ко встроенным необходимо использовать интерфейсы:
a) С помощью функции GetObjectContext получить указатель на интерфейс IObjectContext;
b) С помощью указателя следует получить указатель на интерфейс IGetContextProperties;
c) Вызвав метод GetProperties() и передав ему имя встроенного объекта, например, Request или Response, и вариантную переменную, можно получить через нее указатель на IDispatch интерфейс запрашиваемого объекта;
d) Далее можно вызывать методы встроенного объекта.

5) Недостатки ASP
. Программы ASP не компилируются, а интерпретируются. Следовательно, они исполняются медленнее компилируемых.
. ASP не имеет развитых средств определения типов. Все переменные имеют тип Variant (16 байт). Это удобно, но не способствует повышению скорости работы.
. Внешние файлы приходится включать (include) при каждом обращении.
. ASP трактует все объектные (object) переменные как объекты с поздним связыванием. При каждом обращении к свойству или методу запрашиваются все данные об объекте, что увеличивает время отклика.

6) Пример реализации ASP
— Необходимые настройки и установки
На сервере необходимо установить IIS (каталог WEB5), ADO, ODBC (System DSN – SLS), InterBase (FireBird). В качестве источника данных воспользуемся БД Sales.Gdb.

— Структура программы доступа к БД

HTML-заголовок:

Демонстрация ASP

Подключение к БД
Подключение к БД:

HTML-подвал:


Цикл считывания данных:


Fields.Count-1 %>




Fields.Count-1 %>


— Работа с программой
Для запуска программы следует в браузере набрать: http://localhost/web5/sales/php

7) ASP клоны и аналоги
. Chili!Soft
Chili!Soft, продукт одноименной компании, — достаточно гибкий клон ASP, способный работать на разнообразном оборудовании, операционных системах и Web-серверах. Считается, что Chili!Soft и ASP совместимы на 90%.

. Java Server Pages
Java Server Pages (JSP) – технология, напоминающая ASP, но в которой используется только язык Java в сочетании с HTML, для поддержки динамического формирования страниц на любой платформе с поддержкой Java. Аналогом COM-объектов являются объекты JavaBeans.

. Apache::ASP
Apache::ASP на основе PerlScript от Apache Perl International Project работает на множестве операционных систем, но только с Web-сервером Apache.

. PHP
Похожими возможностями обладает язык с открытой лицензией PHP. Правда технология PHP базируется на классических библиотеках объектных модулей, а не на использовании модели компонентного объекта COM и элементов управления ActiveX.

8) ASP.NET
После получения запроса сервер (в данном случае IIS) по расширению *.Aspx выясняет, что клиент запросил страницу ASP.NET. Затем IIS передает Web-страницу выделенному серверу ISAPI, aspnet_isapi.dll. Этот сервер пересылает страницу процессу Asp.Net: ..\Framework\v4..\aspnet_wp.exe. Рабочий процесс вызывает среду исполнения общего языка (Common Language Runtime – CLR), которая и берет на себя ответственность за компиляцию и выполнение кода страницы. На практике приходится подключать Dll-серверы через механизм COM-Interop, которые могут запускаться в основном процессе сервера.

Файл Active Server Pages (ASP) представляет собой текстовый файл с расширением «.asp». Этот файл может содержать:

  • текстовые данные;
  • теги языка HTML;
  • серверные сценарии.

Для быстрого создания файла «.asp» достаточно переименовать HTML-файл, сменив расширение «.htm» или «.html» на «.asp». Если файл не содержит функций ASP, сервер просто выполняет эффективную отправку файла на компьютер пользователя. Эта черта обеспечивает дополнительные удобства для веб-разработчиков, которые могут давать файлам расширение «.asp», даже если не предполагают впоследствии включать в них функции ASP.

Для опубликования вновь созданного файла «.asp» в Интернете следует сохранить его в виртуальном каталоге веб-узла (последний должен иметь разрешение «Сценарий» или «Выполнение»). После этого можно обратиться к данному файлу в запросе, указав в обозревателе соответствующий адрес URL. (Необходимо помнить, что поскольку страницы ASP должны обрабатываться на сервере, ввод физического пути к файлу «.asp» в данном случае недопустим.) Переданный сервером файл при просмотре в обозревателе представляет собой страницу HTML. В этом есть определенный смысл, так как перед отправкой файла на сервере выполняется его синтаксический анализ и выполняются все серверные сценарии ASP. Поэтому пользователи всегда получают обычные файлы HTML.

Файлы «.asp» могут создаваться в любом текстовом редакторе. По мере накопления опыта более удобной может оказаться работа в специальном редакторе, включающем дополнительную поддержку ASP, таком как Microsoft® Visual InterDev™. (Дополнительные сведения см. на веб-узле Microsoft Visual InterDev по адресу http://msdn.microsoft.com/vinterdev/ .)

Добавление команд в сценарий для сервера

Серверный сценарий состоит из последовательности инструкций, обеспечивающих поочередное поступление команд на веб-сервер. (Разработчикам веб-узлов могут быть хорошо знакомы клиентские сценарии, выполняющиеся в веб-обозревателе.) В файлах «.asp» для обособления сценариев от текстовых данных и команд HTML используются разделители. Разделителем является символ или последовательность символов, которыми обозначается начало или конец раздела. Язык HTML в качестве таких разделителей использует символы (), между которыми располагаются теги HTML.

В ASP команды сценариев заключаются в разделители . В разделителях можно указывать любые допустимые команды используемого языка сценариев. Ниже показан пример простой страницы HTML с командами сценария.

This page was last refreshed on .

Функция VBScript Now() возвращает текущие дату и время. Во время обработки данной страницы веб-обозреватель заменит текущими значениями даты и времени и возвратит страницу обозревателю со следующим результатом:

This page was last refreshed on 01/29/99 2:20:00 PM.

Команды, заключенные в разделители, называются основными командами сценариев и обрабатываются при помощи основного языка сценариев. Команда внутри разделителей должна быть допустимой командой основного языка сценариев. По умолчанию основным языком сценариев является VBScript; можно назначить и другой язык сценариев по умолчанию. См. Работа с языками сценариев .

Разработчикам клиентских сценариев хорошо знаком HTML-тег , используемый для выделения команд и выражений. В серверных сценариях тег может применяться для определения процедур на нескольких языках, содержащихся в одном файле «.asp». Дополнительные сведения по этому вопросу см. в разделе Работа с языками сценариев .

Совместное использование тегов HTML и команд языка сценариев

В разделители ASP можно поместить любую инструкцию, выражение, процедуру или оператор, применение которых разрешено в используемом основном языке сценариев. Под инструкцией в VBScript и других языках написания сценариев понимают синтаксически полную конструкцию, которой описывается один вид действия, объявления или определения. Примером часто используемой инструкции является условная инструкция If...Then...Else :

В зависимости от времени дня строковой переменной strGreeting в сценарии присваивается значение "Good Morning!" («Доброе утро!») или "Hello!" «Здравствуйте!». Инструкция отправляет текущее значение переменной в обозреватель.

Таким образом, до 12:00 дня (по местному времени) на экраны пользователей выводится строка:

Good Morning!

После 12:00 пользователи увидят сообщение:

Между различными частями инструкции может располагаться HTML-текст. Так, результат выполнения приведенного ниже сценария с тегами языка HTML и инструкцией If...Then...Else является таким же, как и в примере выше:

Good Morning! Hello!

Если заданное в сценарии условие выполняется (полдень еще не наступил), веб-сервер отправляет в обозреватель указанный в условии текст HTML (“Good Morning”). В противном случае в обозреватель отправляется строка (“Hello!”), указанная после Else . Подобное чередование HTML-текста и команд сценариев часто применяется при работе с инструкцией If...Then...Else . Применение рассмотренной выше конструкции удобно, если приветствие требуется вывести в нескольких местах веб-страницы. Значение переменной устанавливается только один раз, после чего оно может использоваться многократно.

HTML-текста может также передаваться в обозреватель непосредственно из команды сценария, а не размещаться между различными командами. Возврат текста в обозреватель осуществляется встроенным объектом ASP Response . Результат выполнения следующего сценария тот же, что и в предыдущем примере:

Команда Response.Write отправляет расположенный после нее текст в обозреватель. Инструкцию с Response.Write следует использовать в тех случаях, когда возвращаемый в обозреватель текст должен создаваться динамически. Таким образом, например, можно составить строку из значений нескольких переменных. Чтобы узнать больше об объекте Response в частности и об объектах вообще, обратитесь к разделам Использование компонентов и объектов и Отправка содержимого в веб-обозреватель . Сейчас же просто следует заметить, что добавление команд сценария на страницу HTML можно осуществить несколькими способами.

Допускается включение процедур, написанных на основном языке сценариев, с использованием разделителей ASP. Дополнительные сведения см. в разделе Работа с языками сценариев .

При создании сценария на языке JScript непосредственно в команды ASP могут включаться блоки инструкций в фигурных скобках. В этих конструкциях допускается также присутствие HTML-тегов и текста. Пример.

This is the text version of a page. This is the multimedia version of a page.

Работа с директивами ASP

ASP предоставляет директивы, которые не входят в состав используемого языка сценариев: директиву для вывода данных и директиву для их обработки.

В ASP директива вывода позволяет вывести значение выражения на экран. Эта директива вывода равнозначна команде Response.Write . Например, выражение можно использовать для вывода на экран слова Baltimore (текущее значение переменной) в обозревателе.

Директива обработки позволяет передавать в ASP данные, которые необходимы для обработки файла «.asp». В следующем примере показаны директивы для VBScript в качестве основного языка сценариев на странице:

Директива обработки должна быть первой строкой в файле «.asp». Если страница должна содержать несколько директив, они должны располагаться внутри одной пары разделителей. Включение в файл директивы обработки с помощью инструкции #include не допускается. (Дополнительные сведения см. в разделе

В следующем примере задаются язык сценария и кодовая страница:

Пустые промежутки в сценариях

Если основным языком сценария является VBScript или JScript, ASP автоматически убирает пустые промежутки, которые могут встречаться в командах. В случае остальных языков написания сценариев эти промежутки сохраняются. Это обеспечивает правильность интерпретации команд в языках, где имеют значение местоположение элементов и отступы. Пустыми промежутками являются пробелы, знаки табуляции, возврата каретки и разрыва строки.

В языках VBScript и JScript допускается оставлять промежутки после открывающим и перед закрывающим разделителем. Это облегчает чтение команд. Так, перечисленные ниже инструкции правильны:

Промежуток между закрывающими разделителем одной инструкции и открывающим разделителем другой в ASP удаляется автоматически. Тем не менее, использование пропусков повышает легкость чтение. Чтобы сохранить промежуток между двумя инструкциями, например при отображении значений переменных в предложении, следует пользоваться знаком неразрывного пробела из языка HTML (). Например: