Автор работы: Пользователь скрыл имя, 08 Июня 2013 в 19:25, курсовая работа
При появлении технологии Web компьютеры повернулись лицом к этим двум совершенно противоположным категориям потенциальных пользователей. Элиту объединяла одна черта – в силу высочайшей ответственности и практически стопроцентной занятости “большие люди” никогда не пользовались компьютером; типичной была ситуация, когда с компьютером работал секретарь. В какой-то момент времени они поняли, что компьютер им может быть полезен, что они могут результативно использовать то небольшое время, которое можно выделить на работу за компьютером. Они вдруг поняли, что компьютер - это не просто модная и дорогая игрушка, но инструмент получения актуальной информации для бизнеса. При этом им не нужно было тратить сколько-нибудь заметного времени, чтобы освоить технологию работы с компьютером (по сравнению с тем, как это было раньше).
ВВЕДЕНИЕ 3
РАЗДЕЛ 1. ЭТАПЫ ПРОЕКТИРОВАНИЯ WEB-САЙТА 5
1.1.Понятие web-сайта и обоснование потребности в web-сайте 5
1.2. Предпроектное исследование и составление технического задания 6
1.3. Разработка сайтов 7
1.4. Достоинства и недостатки CMS 10
1.5 Преимущества Joomla перед другими CMS 11
РАЗДЕЛ 2. ВЫБОР ПРОГРАММНЫХ СРЕДСТВ ДЛЯ РАЗРАБОТКИ 13
2.1 Средства разработки 13
2.2 Преимущества использования PHP в сравнении с другими языками 14
2.3 Сервер баз данных MySQL и его особенности 17
2.4. Web-сервер Apache 18
2.5. CMS Joomla 19
РАЗДЕЛ 3. РАЗРАБОТКА ПРИЛОЖЕНИЯ 21
3.1. Общая структура сайта 21
3.2. Дизайн web-сайта 22
3.3 Создание модуля регистрации на конференцию 24
ЗАКЛЮЧЕНИЕ 41
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 42
Joomla! – это Система
Управления Содержимым (CMS), созданная
той же самой получившей
Команда независимых разработчиков отделилась от проекта Mambo по причине несогласия в экономической политике. И 16 сентября 2005 года в свет вышла первая версия Joomla!, являющаяся по сути переименованной Mambo 4.5.2.3 и включающая в себя исправления найденных на тот момент ошибок и уязвимостей [1].
Название Joomla! является фонетической транскрипцией слова "Jumla" из языка Суахили, что означает "все вместе" или "единое целое". Оно было выбрано, поскольку все команды мамберов оказались единодушны в желании защитить интересы создателей и сообщества, которое и является истинной причиной успеха проекта. Это название было выбрано среди тысяч предложенных сообществом, и в добавок прошло серьезную проверку профессионалами брендинга и маркетинга, которые также решили, что Joomla! - это лучший выбор[2].
Главное отличие Joomla! от других систем – это стремление разработчиков сохранить управление настолько простым, насколько это возможно, в то же время обеспечивая максимальную функциональность [3].
CMS Joomla! включает в себя
различные инструменты для
РАЗДЕЛ 3
Для разработки сайта конференции
были подробно изучены сайты научных
конференций, которые размещены
с сети Интернет. Наиболее целесообразным
представить структуру
Рисунок 3.1. – Структурная схема сайта
На главной странице отображаются последние новости и основная информация.
Страница «История кафедры» содержит дополнительную вкладку- «история конференций». Здесь отображается история конференций с момента их возникновения и по сей день. Также есть возможность ознакомится с методическими материалами, относящимся к проводимым конференциям.
Страница «Контакты» содержит данные, по которым можно связаться с организаторами конференции.
Страница «Другие сайты » содержит ссылки на другие сайты похожей тематики.
При регистрации пользователь получает возможность ознакомится с материалами фотогалереи, а также зарегистрироваться для участия в конференции.
После регистрации для
участия в конференции
В соответствии с разработанной структурой была спроектирована главная страничка сайта (Рисунок 3.2). Она содержит все основные структурные элементы, переход по которым осуществляется с помощью гиперссылок. Шаблон для сайта был разработан с помощью программы Artisteer3.
Рисунок 3.2 – Главная страница сайта
Как и планировалось на этапе постановки задачи, сайт содержит все необходимые структурные и навигационные элементы: форму регистрации, навигационное меню (в виде текстовых ссылок).
При нажатии на ссылке «другие сайты конференций» выводится список ссылок, по которым можно перейти на сайты других конференций (рисунок 3.2.1).
Рисунок 3.2.1 – Другие сайты конференций
Вид регистрационной формы нового пользователя показан на рисунке 3.2.2.
Рисунок 3.2.2. – Регистрационная форма
Для регистрации на сайт необходимо ввести имя пользователя, логин, пароль, адрес электронной почты. Для подтверждения регистрации необходимо перейти по ссылке, полученной по данному электронному адресу. Существует возможность восстановления логина или пароля.
Переход на главную страницу осуществляется при нажатие на поле с названием факультета (header).
В базе данных для регистрации участников на конференцию необходимо хранить; фамилию; имя; отчество участника; научную степень; должность; научное звание; место работы; телефон участника; тему доклада; адрес проживания; фамилию, имя и отчество соавтора(если такой имеется). Схема базы данных изображена на рисунке 3.3.1.
Объект "Участники" включает в себя данные об участниках зарегистрированных в системе для участия в конференции. Он обладает свойствами: идентификатор участника; логин; пароль; идентификатор конференции; фамилия; имя; отчество участника; научная степень; должность; научное звание; место работы; телефон участника; email участника; тема доклада; адрес проживания; фамилия, имя и отчество соавтора(если такой имеется).
Рисунок 3.3.1 структура базы данных для регистрации на конференции
Объект "Научная степень" содержит список научных степеней. Он обладает свойствами: идентификатор научной степени, название.
Объект "Должность" содержит список должностей. Он обладает свойствами: идентификатор должности, название.
Объект "Научное звание" содержит список научных званий. Он обладает свойствами: идентификатор звания, название.
Объект "Конференция" содержит список научных конференций. Он обладает свойствами: идентификатор конференции, название, дата начала, дата окончания, дополнительная информация.
Объекты " Научная степень " и " Участники " связаны между собой связью "Один-ко-многим".
Объекты " Должность " и " Участники " связаны между собой связью "Один-ко-многим".
Объекты " Научное звание " и " Участники " связаны между собой связью "Один-ко-многим".
Объекты " Конференция " и " Участники " связаны между собой связью "Один-ко-многим".
Схема базы данных «konferenciya», реализованная с помощью phpMyAdmin, изображена на рисунке 3.3.2.
Рисунок 3.3.2 - просмотр таблиц базы данных paаrticipants с использованием программы phpMyAdmin
Для успешной регистрации
участия в конференции
Написание модуля регистрации осуществлялось с помощью программы «Notepad++», с помощью которой можно редактировать PHP,HTML,CSS, JS.
Использование данной программы изображено на рисунке 3.3.3.
Форма регистрации
с примером заполнения
Рисунок 3.3.3 - написание модуля регистрации
Рисунок 3.3.4 – форма регистрации на конференцию
Реализована валидация заполнения формы. В случае неправильного заполнения полей регистрации выводится список ошибок (Рисунок 3.3.5). Проверка осуществляется сразу для всех элементов.
В случае правильного заполнения полей на экране появляется сообщение «Вы успешно зарегистрированы для участия в конференции!» и данные заносятся в таблицу «paаrticipants»(Рисунок 3.3.6).
Рисунок 3.3.6 – данные, занесенные в таблицу «paаrticipants».
Листинг модуля регистрации участников конференции:
<?
//Подсоединяемся к MySQL
$db = 'Konferenciya';
$dbcon = mysql_connect("localhost","
mysql_select_db($db,$dbcon);
//введите дату начала конференции
$date="06.21.2013";
$date_today = date("m.d.y");
if( $date_today<$date);
// Введите идентификатор необходимой конференции
$id_konf=1;
?>
<form id="register_form" name="register_form" method="post" action="">
<table width="400" height="250" border="0" align="center" cellpadding="2" cellspacing="0">
<tr>
<td width="500" align="right">Логин:
</td>
<td width="300" align="center">
<input style='width:200px' type="text" name="rlogin" id="rlogin"
<?php if ($_POST && $error &&
isset($_POST['rlogin'])) { echo('value="'.$_POST['rlogin'
</td>
</tr>
<tr>
<td align="right">Пароль:</td>
<td align="center"><input style='width:200px'
type="password" name="rpass" id="rpass"
<?php if ($_POST && $error && isset($_POST['rpass']))
{ echo('value="'.$_POST['rpass']
</tr>
<tr>
<td align="right">Повторите пароль:</td>
<td align="center"><input style='width:200px'
type="password" name="rpass_r" id="rpass_r"
<?php if ($_POST && $error && isset($_POST['rpass_r']))
{ echo('value="'.$_POST['rpass_
</tr>
<tr>
<td align="right">Email:</td>
<td align="center"><input style='width:200px'
type="text" name="email" id="email"
<?php if ($_POST && $error && isset($_POST['email']))
{ echo('value="'.$_POST['email']
</tr>
<tr>
<td align="right">Фамилия:</td>
<td align="center"><input style='width:200px' type="text" name="nfname" id="nfname" </td>
</tr>
<tr>
<td align="right">Имя:</td>
<td align="center"><input style='width:200px' type="text" name="nname" id="nname" </td>
</tr>
<tr>
<td align="right">Отчество:</td>
<td align="center"><input style='width:200px' style=class="s" type="text" name="nsname" id="nsname" </td>
</tr>
<tr>
<td align="right">Научная степень:</td>
<td align="center">
<form >
<?php
echo"<select style='width:200px' name='degrees_bd'>";
$degrees_bdResult = mysql_query("SELECT degree FROM degrees")or die("error1:".mysql_error());
while($SelectRow = mysql_fetch_array($degrees_
{
echo "<option id='k'>".$SelectRow['degree'];
"</option>";
} "</select>";
?>
</form>
</td>
</tr>
<tr>
<td align="right">Должность:</td>
<td align="center">
<form >
<?php
echo"<select style='width:200px' name='posts_bd'>";
$posts_bdResult = mysql_query("SELECT post FROM posts")or die("error2:".mysql_error());
while($SelectRow1 = mysql_fetch_array($posts_
{
echo "<option id='i'>".$SelectRow1['post'];
}
?>
</form>
</td>
</tr>
<tr>
<td align="right">Научное звание:</td>
<td align="center">
<form >
<?php
echo"<select style='width:200px' style='width:200px' name='titles_bd'>";
$titles_bdResult = mysql_query("SELECT title FROM titles")or die("error3:".mysql_error());