После получения технического задания разработчик может обратиться к приведенным выше методическим рекомендациям и, ответив на вопросы из таблицы, выбрать в результате оптимальное средство разработки сайта. Если задача разнородна, и в результатах наблюдается большой разброс, то следует использовать гибридный проект, то есть с использованием нескольких технологий.
Мы выделили следующие критерии сравнения технологий PHP, ASP и XML: простота, гибкость, компактность, совместимость, эффективность, работа с базами данных, работа с файлами, обработка данных, использование HTML-форм, обмен данными, наличие прямой обратной связи, использование СОМ, описание данных, наличие встроенных функций и объектов, использование сеансов, поддержка различных протоколов, обеспечение безопасности, поддержка различных кодировок и т.д. Опираясь на выделенные критерии, мы разработали методические рекомендации в зависимости от конкретного технического задания. Использование этих рекомендаций поможет разработчику выбрать оптимальное средство создания сайта. Выбор технологии зависит от сложности и формы содержания сайта - для разработки сайтов, не содержащих сценариев и не имеющих возможности обратной связи, следует использовать технологию XML; для разработки несложного, однородного по форме содержания сайта - технологию РНР; для разработки несложного, разнородного по форме содержания сайта - технологию ASP; для разработки сложной разнородной системы следует задействовать все три технологии.
Нами были поставлены следующие задачи: разработка теста (несколько вопросов с возможностью выбора единственного ответа на каждый из них), записной книжки (возможность ввода пользователем информации и вывод ее на этой же странице) и электронного прайс-листа (на примере книжного магазина: информация о книгах - код, название, автор, цена и количество). Подразумевалось создание небольших заготовок с помощью Dreamweaver, не содержащих длинного, сложного кода - исключительно с целью демонстрации применения определенной технологии в зависимости от задачи. Выбор делался на основании разработанных ранее методических рекомендаций.
Для разработки теста была выбрана технология ASP, для разработки записной книжки - технология РНР, для разработки электронного прайс-листа - технология XML.
Структура записной книжки: HTML-форма для отправки пользователем данных на сервер (файл index.html), серверный сценарий для обработки полученной информации (board. php) и файл для хранения данных (notes. txt). Пользователь вводит данные, они поступают на сервер, записываются в файл и затем выводятся на HTML-страницу. Новая введенная пользователем информация добавляется в файл данных и также выводится на HTML-страницу.
Создание формы в Dreamweaver- Insert > Form > Form. Затем требуется заполнить нужные поля (рис.7).
Аналогично происходит добавление элементов управления в форму - Insert > Form > TextArea (вставка текстового поля) и Insert > Form > Button (вставка кнопки). Так же заполняем нужные поля.
Рис.7. Создание формы
Конечный код формы:
<formaction="board. php" method="post" name="board">
<textarea name="message" cols="30" rows=""></textarea><br><br>
<input name="write" type="submit" value="Написать">
</form>
Файл notebook. phpтоже содержит код формы, а также теги php:
<? php
$date = date ("Y-m-d H: i: s");
// запись в переменную date текущей даты и времени
$s = $date. "<br>". $message. "<hr>\r\n";
// запись в переменную sдаты, данных, введенных пользователем в форму, и горизонтальной линии. \r\n- переход на новую строку
$f = @fopen ("notes. txt","a+");
// открытие файла notes. txt для чтения и записи
fwrite ($f,$s);
// добавление содержимого переменной s в файл
fclose ($f);
// закрытие файла
include ("notes. txt");? >
// вывод содержимого файла на HTML-страницу
Конечный вид страницы представлен на рис.8.
Рис.8. Записная книжка
В Dreamweaver отсутствует механизм автоматического создания документа xml, поэтому написание кода проходило "вручную", основываясь на теоретических знаниях. Каждый элемент (в нашем случае - книгу) описываем с помощью одинакового набора тегов - book, code (код), title (название), author (автор), price (цена) и quantity (количество) (рис.9). Для того чтобы позже была возможность применения таблицы стилей XSL, введены дополнительные теги: booksCaption, booksCode, booksTitle, booksAuthor, booksPrice, booksQuantity.
Рис.9. Вид документа без применения XSL
Для применения к документу xml таблицы стилей XSL в файле BookStore. xmlпрописывается следующая строка:
<? xml-stylesheet type="text/xsl" href="BookStore. xsl"? >.
Файл BookStore. xsl содержит следующий код:
<xsl: stylesheet version="1.0" xmlns: xsl="http://www.w3.org/TR/WD-xsl">
<xsl: template match="/">
<body bgcolor="#F8F8FF">
<font face="Verdana">
<h4><font color="#191970">
<xsl: value-of select=" // booksCaption"/>
</font></h4>
<table border="1">
<tr bgcolor="#B0C4DE">
<td align="center"><strong><xsl: value-of select=" // booksCode"/></strong></td>
<td align="center"><strong><xsl: value-of select=" // booksTitle"/></strong></td>
<td align="center"><strong><xsl: value-of select=" // booksAuthor"/></strong></td>
<td align="center"><strong><xsl: value-of select=" // booksPrice"/></strong></td>
<td align="center"><strong><xsl: value-of select=" // booksQuantity"/></strong></td></tr>
<xsl: for-each select="BookStore/books/book" order-by="number (price)">
<tr bgcolor="#F5F5F5">
<td><xsl: value-of select="code"/></td>
<td><xsl: value-of select="title"/></td>
<td><xsl: value-of select="author"/></td>
<td><xsl: value-of select="price"/></td>
<td><xsl: value-of select="quantity"/></td></tr>
</xsl: for-each>
</table>
</font>
</body>
</xsl: template>
</xsl: stylesheet>
Вид документа с применением таблицы стилей представлен на рис.10.
Рис.10. Вид документа с применением XSL
Мы выяснили, что Dreamweaver не дает возможности создания asp-страниц с активностью на стороне сервера, поэтому было решено создать asp-страницу, содержащую скрипт, написанный на языке VBScript и выполняющийся на стороне клиента. Скрипт заключается в теги <script> и </script>.
Файл Test. asp содержит форму для сбора данных и скрипт для их обработки. Создание формы в Dreamweaver - Insert > Form > Form. Вставка кнопки - Insert > Form > Button, вставка переключателей - Insert > Form > Radio Button. Код кнопки:
<input type = "button" value="Проверка" onclick="valid ()">
При нажатии на кнопку происходит вызов функции valid ().
Создаем группу переключателей для каждого вопроса, задаем им уникальное имя и команду при нажатии - это требуется для работы скрипта.
Фрагмент кода формы:
<b>1. Сколько лет длилась столетняя война? </b>
<input type="radio" name="zad1" onclick="zad1_1 ()"> 100
<input type="radio" name="zad1" onclick="zad1_2 ()"> 116
<input type="radio" name="zad1" onclick="zad1_3 ()"> 99
При нажатии на переключатель вызывается функция, обозначенная после onclick.
При написании скрипта сначала задаем переменные и обнуляем их:
<script Language = VBScript>
dim ot1, ot2, ot3, ot4, ot5
ot1=0: ot2=0: ot3=0: ot4=0: ot5=0
Затем для каждого вопроса задаем значение - правильный (1) и неправильный (0) ответ:
sub zad1_1 ()
ot1=0
end sub
sub zad1_2 ()
ot1=1
end sub
sub zad1_3 ()
ot1=0
end sub
Для описания функции valid () задаем переменную ot для хранения результатов теста
sub valid ()
ot=""
и обрабатываем каждый ответ
ifot1=1 then
ot=ot+"Ответ 1 правильный"
else
ot=ot+"Ответ 1 неправильный"
end if
ot=ot+chr (13)
Далее выводим сообщение с результатами:
MsgBox ot, 0, "Результаты"
window. navigate ("Test. asp")
end sub
Конечный вид страницы представлен на рис.11.
Рис.11. Тест.
Нами были поставлены следующие задачи: разработка записной книжки, теста и электронного прайс-листа. С помощью Dreamweaver были созданы заготовки, реализующие эти задачи, на базе технологий РНР, XML и ASP. Выбор в пользу того или иного средства разработки делался на основании разработанных ранее методических рекомендаций.
Были приведены следующие данные по каждой заготовке: структура документа, процесс разработки страниц, фрагменты программного кода с комментариями и конечный вид страниц.
MacromediaDreamweaverMX- одна из самых мощных программ, поддерживающих все современные стандарты Интернета и невероятно облегчающая выполнение даже самых сложных задач. Dreamweaver MX позволяет создавать сайты на базе различных веб-технологий: HTML, XHTML, XML, ColdFusion, ASP, ASP.net, JSP и PHP.
PHP- это язык обработки гипертекста, используемый на стороне сервера, конструкции которого вставляются в HTML-текст. Его цель - позволить максимально быстро создавать динамически генерируемые web-страницы. РНР имеет много возможностей (совместимость с различными серверами и платформами, поддержка различных технологий, использование различных протоколов, наличие функций для работы с текстовыми данными любых форматов, включая XML, работа с базами данных, простой синтаксис и т.д.), но несмотря на это существует недостаток - бесплатность. Для создателей рядовых сайтов это плюс, но для серьезных компаний, дорожащих своей репутацией, это минус. Технология практически идеальна для разработки развлекательного или коммерческого интернет-проекта (например, интернет-магазина).