Разработка web-сервиса sms и e-mail рассылки для нужд гражданской обороны ТГПУ

Автор: Пользователь скрыл имя, 23 Декабря 2012 в 09:07, курсовая работа

Описание работы

Целью данной курсовой работы является разработка web-сервиса sms и e-mail рассылки для нужд гражданской обороны ТГПУ.
В связи с поставленной целью решались следующие задачи:
1) обзор программного обеспечения sms и e-mail рассылки;
2) выбор технологий для реализации сервиса;

Содержание

Введение……………………………………………………………………..
ГЛАВА 1. Основные концепции электронной почты…………………….
1.1. Основные концепции…………………………………………….......
1.2. Протоколы взаимодействия клиента и сервера……………………
ГЛАВА 2. Разработка элементов Web-интерфейса……………………….
2.1. Управляющие элементы форм……………………………………...
2.2. Тег FORM – контейнер форм……………………………………….
2.3. Тег INPUT и способы его использования………………………….
2.4. Ввод многострочного текста………………………………………..
2.5. Списки выбора. Тег SELECT……………………………………….
Заключение…………………………………………………………………..
Список использованной литературы………………………………………
Приложение. Описание интерфейса пользователя программы sms и e-mail рассылки ……………………………………………………………….

Работа содержит 1 файл

Курсовая .doc

— 471.50 Кб (Скачать)

2. Передача сообщений. Этот этап подразумевает выполнения следующих действий: проверку корректности каждого адреса из списка получателей и собственно передачу сообщений. Протоколом предполагается, что при получении почты SMTP-сервер берет на себя ответственность за дальнейшую доставку почты либо непосредственно в почтовый ящик получателя, либо путем пересылки ее другим SMTP-серверам. В последнем случае этот SMTP-сервер выступает в качестве клиента по отношению к другим серверам.

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

В ряде случаев  сервер может отказаться от доставки почты (например, если промежуточная маршрутизация сообщений на сервере запрещена). Тогда он обязан уведомить об этом клиента, оставив на нем ответственность за судьбу сообщения.

Следует отметить, что протокол SMTP предоставляет возможность  пересылки в рамках одного сеанса нескольких сообщений одному или более адресатам.

3. Завершение сеанса. После окончания пересылки сообщений клиент передает серверу команду завершения сеанса.

 

1.2.2. Протокол POP3

Протокол POP3 предполагает, что обмен информацией между  клиентом и сервером осуществляется по схеме "запрос-ответ". Команды клиента, представленные в запросах, и ответы сервера с результатом обработки запросов передаются в текстовом виде.

Взаимодействие  построено из следующих этапов:

1. Аутентификация и авторизация. На этом этапе осуществляется проверка имени и пароля пользователя почтового ящика. В случае успеха между клиентом и сервером устанавливается сеанс, в рамках которого осуществляется основное взаимодействие.

2. Основная работа. На этом этапе клиент осуществляет работу с содержимым почтового ящика. Возможны следующие операции:

    • запрос статистики, (например, количества сообщений, их общего размера и т.п.);
    • запрос списка сообщений;
    • выборка полного текста определенного сообщения или его части, например, заголовка;
    • пометка сообщений, подлежащих удалению.

3. Обновление и завершение сеанса. На этом этапе клиент направляет серверу команду завершения сеанса. При ее получении сервер удаляет помеченные сообщения и завершает сеанс работы с клиентом.

 

1.2.3. Протокол IMAP4

Протокол IMAP4, как и все почтовые протоколы, предполагает взаимодействие между клиентом и сервером по схеме "запрос-ответ": в запросах клиента указываются команды и их параметры, а в ответах сервера - результат обработки команд. Однако, в отличие от протокола POP3, IMAP4 предусматривает режим асинхронного взаимодействия. Это означает, что клиент может направить серверу сразу несколько команд, не дожидаясь ответов на каждую из них, а потом принять разом все ответы. Для обеспечения такого режима с каждой командой связывается уникальная метка, которая позволит серверу идентифицировать команду, а клиенту - идентифицировать ответ.

Взаимодействие  клиента и сервера предполагает четыре этапа:

1. Аутентификация и авторизация пользователя и установление сеанса. На данном этапе происходит проверка имени и пароля пользователя и установления сеанса между клиентом и сервером. Протокол IMAP4 позволяет осуществлять аутентификацию несколькими различными способами, отличающимися друг от друга методами шифрования пароля. Поэтому в составе протокола предусмотрен механизм согласования схемы аутентификации.

2. Работа с почтовым ящиком. После успешной авторизации пользователь получает возможность работы с папками почтового ящика. Возможно выполнение следующих действий: создание, удаление, переименование папок, просмотр содержимого папки и получение информации о ней, а также выбор папки для дальнейшей работы с сообщениями.

3. Работа с сообщениями в выбранной папке. На этом этапе осуществляется работа с сообщениями, которые находятся в выбранной папке. Возможно выполнение таких операций как: удаление, копирование, поиск сообщений, получение информации о сообщении, содержимого сообщения как целиком, так и частично, сохранение изменений, внесенных в сообщение. Также в составе протокола предусмотрена специальная команда, позволяющая "закрыть" папку и прейти к предыдущему этапу работы.

4. Завершение сеанса. После окончания работы клиент с помощью специальной команды сообщает серверу о необходимости завершить сеанс.

 

 

 

 

 

 

 

 

ГЛАВА 2. Разработка элементов Web-интерфейса

Работая с формами  можно вводить текст в поле ввода, выбирать пункт меню, отмечать флажком правильный ответ, нажимать кнопку и т.д. При этом всегда ожидается  от документа осмысленная реакция.

 

2.1. Управляющие элементы форм

Форма в html-документе реализуется тегом-контейнером form, в котором задаются все управляющие элементы — поля ввода, кнопки и т.д. Если управляющие элементы указаны вне содержимого тега form, то они не создают форму, а используются для построения пользовательского интерфейса на web-странице, то есть для привнесения в нее различных кнопок, флажков, полей ввода. Обработка таких элементов производится индивидуально в рамках самого html-документа с помощью включенных в него скриптов. А могут вообще никак не обрабатываться. Например, управляющий элемент TEXTAREA часто используется для создания окна с полосой прокрутки внутри документа для вывода большого текста, который играет второстепенную роль. Обычно так отображаются тексты лицензионных соглашений, тексты больших комментариев или правила пользования данным web-ресурсом. Имена элементам формы присваиваются через их атрибут NAME. Каждый элемент формы имеет начальное, используемое по умолчанию, и конечное значения, которые являются символьными строками. Начальные значения элементов не меняются, благодаря чему может осуществляться сброс значений, указанных пользователем. Результатом этого действия будет установка всех управляющих элементов формы в своих первоначальных используемых по умолчанию значениях.

В html определены следующие типы управляющих элементов:

● Кнопки — задаются с помощью элементов BUTTON и INPUT. Различают:

○ кнопки отправки — при нажатии на них отправляются формы серверу;

○ кнопки сброса — при их нажатии устанавливают управляющие элементы в первоначальные значения;

○ прочие кнопки — кнопки, для которых не указано действие, выполняемое по умолчанию при их нажатии.

● Зависимые переключатели (переключатели с зависимой фиксацией) — задаются элементом INPUT и представляют собой переключатели «вкл\выкл». Если несколько зависимых переключателей имеют одинаковые имена, то они являются взаимоисключающими. Это значит, что если одна из них ставится в положение «вкл», то все остальные автоматически — в положение «выкл». Именно это и является преимуществом их использования.

● Независимые переключатели (переключатели с независимой фиксацией) — задаются элементом INPUT и представляют собой переключатели «вкл\выкл», но в отличие от зависимых, независимые переключатели могут принимать и изменять свое значение независимо от остальных переключателей. Даже если последние имеют такое же имя.

● Меню — реализуется с помощью элементов SELECT, OPTGROUP и OPTION. Меню предоставляют список возможных вариантов выбора.

● Ввод текста — реализуется элементами INPUT, если вводится одна строка, и элементами TEXTAREA — если несколько строк. В обоих случаях введенный текст становится текущим значением управляющего элемента.

● Выбор файлов — позволяет вместе с формой отправлять выбранные файлы, реализуется html-элементом INPUT.

● Скрытые управляющие элементы — создаются управляющим элементом INPUT.

2.2. Тег form – контейнер форм

Форма реализуется  тегом-контейнером FORM. Тег своими атрибутами указывает адрес сценария, которому будет послана форма, способ пересылки и характеристику данных, содержащихся в форме. Начальный и конечный теги FORM задают границы формы. Их указание является обязательным.

Атрибуты тега FORM:

● action — единственный обязательный атрибут. В качестве значения этого атрибута указывают URL-адрес запрашиваемой CGI-программы. Эта программа будет обрабатывать данные, содержащиеся в форме. Допустимо использовать запись MAILTO:URL, благодаря которой форма будет послана по электронной почте. Если атрибут ACTION все-таки не указан, то содержимое формы будет отправлено на URL-адрес, с которого загружалась данная WEB-страница.

● method — определяет метод http, используемый для пересылки данных формы от браузера к серверу. Атрибут METHOD может принимать два значения: get или post.

● enctype — необязательный атрибут. Указывает тип содержимого формы, используемый для определения формата кодирования при ее пересылке. В html определены два возможных значения для атрибута ENCTYPE:

● APPLICATION/X-WWW-FORM-URLENCODED (используется по умолчанию).

● MULTIPART/FORM-DATA.

 

2.3. Тег input и способы его использования

Тег INPUT позволяет создавать внутри формы поля ввода строки текста, имени файла, пароля и др. У INPUT нет конечного тега. Атрибуты и особенности использования INPUT зависят от способа его использования.

 

2.3.1. Однострочные поля ввода

Формат тега INPUT для создания поля ввода текстовой строки:

<input type-text

name=имя_параметра

[value=значение]

[size=paзмер]

[maxlen=длина]>

Тег создает  поле ввода с максимально допустимой длиной текста maxlen и размером в size знакомест. Если задан атрибут value, то в поле будет изначально отображаться указанная строка. В квадратных скобках помечены необязательные атрибуты.

 

2.3.2. Поле ввода пароля

Пароль не должен отображаться на экране. Поле для ввода  пароля:

<input type=Password

name=имя_параметра

[value=значение]

[size=paзмер]

[maxlen=длина]>

Вводимая информация в поле не отображается, а заменяется «звездочками».

Не рекомендуется  устанавливать значение value (значение по умолчанию) из соображений безопасности. В окне браузера данное значение не отображается, но стоит просмотреть исходный html-код, пароль будет виден «невооруженным глазом».

 

2.3.3. Скрытое текстовое поле

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

<input type=hidden

name=имя

value=значение

Такие поля передаются серверу, но на web-странице не отображаются.

 

2.3.4. Независимые переключатели

Пользователю, заполняющему форму у себя в браузере, дают возможность указать свои настройки с помощью выбора определенных значений. При этом приводятся сами эти значения, а рядом с ними помещается небольшое квадратное поле, в котором можно установить, либо убрать галочку. При этом значение, соответственно, будет либо выбрано, либо нет:

<input type=checkbox

name=имя

value=значение

[checked]

Если переключатель  был включен на момент нажатия  кнопки отправки данных, то сценарию будет  передан параметр имя=значение. Если же флажок выключен, то сценарию вообще ничего не будет передано — как будто нашего переключателя вообще нет.

Переключатель может быть по умолчанию либо включен, либо выключен. Чтобы переключатель  был по умолчанию включен, необходимо для него указать атрибут checked.

Переключатель checkbox называется независимым, так как его состояние не зависит от состояния других переключателей checkbox. В одной форме может быть одновременно выбрано несколько переключателей

Листинг input.html. Тег input и способы его использования:

<html>

<head> <title>Тег input и способы его использования</title></head>

<body><form action=hello.php>

Текстовое поле ввода имени (login): <input type=text name=”login” value=””<br>

Поле ввода  пароля (password): <input type=password name=”password” value=””<br>

Скрытое поле hid <input type=”hidden” name=”hid” value=”Hidden Field”<br>

<hr>

<input type=”checkbox”  name=”varl” value=”Bapmнт 1”checked>Bapиaнт 1 (по  умолчанию)

<input type=”checkbox”  name=”var2” value=”Bapиант 2”>Вариант  2<br>

<input type=”submit”  name=”go” vа1ue = “Передать “ ><br>

<input type=”reset” vа1ue = “Очистить форму” ><br>

</form></body>

</html>

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

Рис 2. Реализация независимого переключателя.

2.3.5. Зависимые переключатели

Если в форме  присутствует несколько одноименных  зависимых переключателей типа radio, то включен из них может быть только один. При выборе одного переключателя все одноименные зависимые переключатели автоматически выключаются. В качестве имени переключателей воспринимается значение атрибута name.

Листинг radio_1.html. Форма с зависимыми переключателями

<html>

<head>

  <title>Зависимые переключатели</title>

</head>

<body>

<form action=»http://localhost/tor.php» method=»post”>

<input type=radio

name=tor

value=male

checked

>

Мужчина

<input type=radio

name-tor

value=female

>

Женщина

<input type=submit

name=go

value=Передать

>

</form>

</body>

</html>

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

Рис 3. Реализация зависимого переключателя.

Первый переключатель (со значением male) активен по умолчанию (установлен атрибут checked). Как только пользователь нажмет кнопку Передать, сценарию tor.php будет передан параметр tor (атрибут name обоих переключателей) со значением male. Если же пользователь выберет другой вариант (female), сценарию будет передано значение параметра tor.

Информация о работе Разработка web-сервиса sms и e-mail рассылки для нужд гражданской обороны ТГПУ