83375

Созданию информационного сайта для студенческого клуба ИАТЭ «Грот»

Курсовая

Информатика, кибернетика и программирование

База данных включает в себя три таблицы. Таблица «активисты» хранит имена фамилии и должности участников студенческого направления. Таблица «направление» хранит названия студенческих направлений. Структура сайта Верхний блок сайта – шапка сайта. Блок меню содержит пункты меню и вход...

Русский

2015-03-14

1.09 MB

2 чел.

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

Федеральное государственное бюджетное образовательное

учреждение высшего профессионального образования

«Национальный исследовательский ядерный университет «МИФИ»

ОБНИНСКИЙ ИНСТИТУТ АТОМНОЙ ЭНЕРГЕТИКИ

КАФЕДРА «ИНФОРМАЦИОННЫЕ СИСТЕМЫ»

Курсовая работа

по дисциплине

«Web-программирование»

Выполнил:

Студент группы ИС-Б11

Фищенков Н.О.

Проверил:

Охрименко И.В.

Обнинск 2014

СОДЕРЖАНИЕ

1. Введение……………………………………………………………...3

2. Техническое задание…………...……………………………………4

3. Структура базы данных…………….………………………………...5

3. Структура сайта…………………….………………………………...6

4. Дизайн сайта……………………….…………………………………7

5. Пример работы гостевой книги.............…..………………………...8

6. Пример работы обратной связи……………....……………………..8

7. Заключение……………………………………..…………………….9

8. Список литературы……………………………....…………………..9

9. Приложения.……………………………………..………………….10

ВВЕДЕНИЕ

Данная работа посвящена созданию информационного сайта для студенческого клуба ИАТЭ «Грот». Сайт будет включать в себя основную информацию о клубе «Грот»: расписание, информацию о сотрудниках, студенческих направлениях, галерею.

ТЕХНИЧЕСКОЕ ЗАДАНИЕ НА РАЗРАБОТКУ

1. Введение:

Название проекта: Web-Grot.

Краткое описание: Web-сайт, на котором можно будет узнать информацию о студенческом клубе Грот.

2. Основания для разработки:

В рамках задания по курсу “Web-технологии”.

3. Назначение разработки:

 Web–сайт позволит смотреть информацию о работе клуба, работе студенческих направлений, информацию о мероприятиях и сотрудниках клуба «Грот»

4.Требования к программному продукту:

4.1Требование к функциональным характеристикам:

  1.  Добавление новостей администратором
  2.  Функционал обратной связи
  3.  Гостевая книга
  4.  Поиск по сайту

4.2Требование к надежности:

  1.  Доступ к сайту разрешен любому пользователю.
  2.  Редактирование новостей разрешено только администратору

4.3Условия эксплуатации:

  1.  Совпадают с условиями эксплуатации ПК.

4.4Требования к составу и параметрам технических средств:

  1.  Требуется ПК стандартной комплектации, и web-браузер

4.5Требование к информационной программной совместимости:

  1.  Для разработки программного продукта требуется сервер Apache, Mysql, PHP. Notepad++.
  2.  Для запуска программного продукта требуется любой web браузер.

4.6. Специальные требования:

  1.  Нет.

5. Требование к Программной документации:

Техническое задание в печатном виде.

6. Стадии и этапы разработки:

Этап 1: составить ТЗ программного продукта.

Этап 2: разработка сайта

Этап 3: тестирование сайта.

Этап 4: сдача проекта.

7. Порядок контроля и приема:

Работа будет представляться группе преподавателей кафедры ИС с использованием мультимедийного оборудования.  

Структура БД

База данных включает в себя три таблицы. Таблица «активисты» хранит имена фамилии и должности участников студенческого направления. Таблица «направление» хранит названия студенческих направлений.

Структура сайта

Верхний блок сайта – шапка сайта.

Блок меню содержит пункты меню и вход в администраторскую панель

Основная часть содержит информацию о компании и

Шапка сайта

Меню Сайта

Страницы студенческих направлений

Календарь

Слайдер

Поиск по сайту

   Рабочая область

Меню навигации

ДИЗАЙН САЙТА

Пример работы гостевой книги и обратной связи

 На странице расположена форма для добавления записи и отображение предыдущих записей. По нажатию кнопки запись добавляется  на сайт.

 На странице расположена форма для связи с администрацией сайта.

ЗАКЛЮЧЕНИЕ

В данной Курсовой работе были изучены принципа программирования на php, HTML, CSS. В процессе был создан сайт.

На сайте было реализовано:

-база данных и обработчик для БД на php;

-гостевая книга

-форма для добавления новостей

-форма обратной связи;

-поиск по сайту.

СПИСОК ЛИТЕРАТУРЫ

  1.  Rainbow [Электронный ресурс]: http://craig.is/making/rainbows/
  2.  [Электронный ресурс]: http://htmlbook.ru/
  3.   Николай Прохоренок, HTML, JavaScript, PHP и MySQL. Джентльменский набор Web-мастера - БХВ-Петербург, 2010,  900 стр.

ПРИЛОЖЕНИЯ

Обработчик БД

<?PHP header("Content-Type: text/html; charset=utf-8");?>

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

<?php 

// определяем начальные данные

$db_host = 'localhost';

$db_name = 'projects';

$db_username = 'root';

$db_password = '';

// соединяемся с сервером базы данных

$connect_to_db = mysql_connect($db_host,$db_username,$db_password)

or die("Could not connect: " . mysql_error());

// подключаемся к базе данных

mysql_set_charset("CP1251");

mysql_select_db($db_name, $connect_to_db)

or die("Could not select DB: " . mysql_error());

// выбираем все значения из таблицы "projects"

$qr_result = mysql_query('SELECT * FROM `projects` WHERE `id` =1')

or die(mysql_error());

// выводим на страницу сайта заголовки HTML-таблицы

echo '<table border="1">';

echo '<thead>';

echo '<tr>';

echo '<th>Проект</th>';

echo '<th>Описание</th>';

echo '</tr>';

echo '</thead>';

echo '<tbody>';

// выводим в HTML-таблицу все данные клиентов из таблицы MySQL 

while($data = mysql_fetch_array($qr_result)){

echo '<tr>';

echo '<td>' . $data['name'] . '</td>';

echo '<th>' . $data['desc'] . '</th>';

echo '</tr>';

}

echo '</tbody>';

echo '</table>';

// закрываем соединение с сервером базы данных

mysql_close($connect_to_db);

?>

Главная страница

<html>

<head>

<meta http-equiv="content-type" content="text/html; charset=utf-8" />

<title>Студенческий Клуб ИАТЭ Грот</title>

<meta name="keywords" content="" />

<meta name="description" content="" />

<link href="styles.css" rel="stylesheet" type="text/css" media="screen" />

</head>

<body>

<div id="content">

<div id="back_all">

<!-- header begins -->

<div id="header">

<div id="logo">

 </div>

 <div id="menu">

 <ul>

  <li><a href="file:///C:/Users/fin/Desktop/web/index.html"  title="">Главная</a></li>

  <li><a href="file:///C:/Users/fin/Desktop/web/galereya.html" title="">Галерея</a></li>

  <li><a href="file:///C:/Users/fin/Desktop/web/raspisanie.html" title="">Расписание</a></li>

  <li><a href="file:///C:/Users/fin/Desktop/web/contakts.html" title="">Контакты</a></li>

 </ul>

</div>

</div>

<!-- header ends -->

<!-- content begins -->

<div id="main">

<div id="left">

 <h3>Календарь</h3>

  <p>Наши мероприятия <a href="file:///C:/Users/fin/Desktop/metamorph_fullmoon/calendar.html">Календарь</a></p>

  <br />

  <h3>Активы факультетов</h3>

  <ul>

    <li><a href="http://vk.com/l69k37">К</a></li>

    <li><a href="https://vk.com/fen4ick">ФЕН</a></li>

    <li><a href="http://vk.com/reaktiv_fef">Фэф</a></li>

    <li><a href="http://vk.com/aktivisty">СЭФ</a></li>

    <li><a href="http://vk.com/medactiv">МЕД</a></li>

   

       

   </ul>    

   

</div>

<div id="right">

 <h2>Перед вам информационный портал Студенческого Клуба "Грот"</h2><br />

    <p>Грот это место, где проводят и готовят мероприятия студенческие направления ИАТЭ. Среди них: активы факультетов, кураторы, театр, клуб исторического фехтования Walhall, танцевальные коллективы NEXT и  F.I.L.A.   </p>

     <p>На этом сайте вы сможете найти любую информацию о студенческом клубе грот</p>

               <br />

        Например<br />

        - Часы работы<br />

        - Расписание Занятий<br />

        - Галерея .<br />

        

 

   

<!--content ends -->

</div>

</div>

</div>

<!--footer begins -->

<!-- footer ends-->

</body>

</html>

Гланая php

<?php

require_once 'functions.php';

switch($_REQUEST['show'])

{case $case: include 'gadgets/'.$case.'.php';break;

case 'content1':

show_content1();

break;

case 'content2':

show_content2();

break;

case 'content3':

show_content3();

break;

case 'content4':

show_content4();

break;

case 'content5':

show_content5();

break;

default:

show_content1();}

show_main();

function show_content1(){global $vars;$zagolovok=file('contents/headline.dat'); $vars['zagolovok']=$zagolovok[0];$vars['num'] =1;$template =file_get_contents('contents/content1.htm');$vars['contents']=parse_tpl($template, $vars);}

function show_content2(){global $vars;$zagolovok=file('contents/headline.dat'); $vars['zagolovok']=$zagolovok[1];$vars['num'] =2;$template =file_get_contents('contents/content2.htm');$vars['contents']=parse_tpl($template, $vars);}

function show_content3(){global $vars;$zagolovok=file('contents/headline.dat'); $vars['zagolovok']=$zagolovok[2];$vars['num'] =3;$template =file_get_contents('contents/content3.htm');$vars['contents']=parse_tpl($template, $vars);}

function show_content4(){global $vars;$zagolovok=file('contents/headline.dat'); $vars['zagolovok']=$zagolovok[3];$vars['num'] =4;$template =file_get_contents('contents/content4.htm');$vars['contents']=parse_tpl($template, $vars);}

function show_content5(){global $vars;$zagolovok=file('contents/headline.dat'); $vars['zagolovok']=$zagolovok[4];$vars['num'] =5;$template =file_get_contents('contents/content5.htm');$vars['contents']=parse_tpl($template, $vars);}

?>

Пример страницы содеожания

<p> Вы попали на сайт компании EasyBuilding </p>

<p> Наша компания существует на рынке уже 3 года. </p>

<ul> <p> Мы предоставляем качественные услуги каждому нажему клиенту. </p>

<p> Среди них: </p>

<li> Продажа готовых проектов для строительства </a>.

<li> Контроль строительных работ </a>.

<li> Оказание консультаций. </a>

</ul>

<p> Мы постарались сделать все возможное, чтобы процесс выбора дома был для Вас простым и приятным. Наш опыт работы в области составления проектных решений является лучшей гарантией достойного качества всех представленных проектов загородных домов. </p>

Страница 5.

<?

include('const.php');

?>

Панель добавления новостей

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<style type="text/css">

  #centerLayer {

   position: absolute;

   width: 300px;

   left: 50%;

   top: 50%;

   margin-left: -200px;

   margin-top: -100px;

   color: #000000;

   background: #FFFFFF;

   border: double 4px black;

   padding: 10px;

   overflow: auto;

   z-index: 3;

  /*+box-shadow:5px 7px 15px #121111;*/

-moz-box-shadow: 5px 7px 15px #121111;

-webkit-box-shadow: 5px 7px 15px #121111;

-o-box-shadow: 5px 7px 15px #121111;

box-shadow: 5px 7px 15px #121111;

}

#centerLayer A IMG

{

/*+placement:anchor-top-right 0px 0px;*/

position: absolute;

right: 0px;

top: 0px;

}

#newsLayer {

   position: absolute;

   width: 800px;

   left: 50%;

   top: 50%;

   margin-left: -465px;

   margin-top: -230px;

   color: #000000;

   background: #FFFFFF;

   border: double 4px black;

   padding: 10px;

   overflow: auto;

   z-index: 3;

   /*+box-shadow:5px 7px 15px #121111;*/

-moz-box-shadow: 5px 7px 15px #121111;

-webkit-box-shadow: 5px 7px 15px #121111;

-o-box-shadow: 5px 7px 15px #121111;

box-shadow: 5px 7px 15px #121111;

}

#newsLayer A IMG

{

/*+placement:anchor-top-right 0px 0px;*/

position: absolute;

right: 0px;

top: 0px;

}

</style>

<?php

    $pass = base64_decode('YWRtaW4=');

    $login = base64_decode('YWRtaW4=');

if (isset($_POST['news']) && isset($_POST['in'])) {

if (!empty($_POST['news'])) {

$nnews="\r\n <b>".date("d.m.y")."</b>  ".htmlspecialchars($_POST["news"]);

$filenews = fopen('contents/news.dat', 'a');

$test = fwrite($filenews, $nnews);

fclose($filenews);

$file=file('contents/news.dat');

if (count($file) >= 10) {

for($i=0;$i<(count($file)-10);$i++)

unset($file[$i]);

$fp=fopen('contents/news.dat',"w");

fputs($fp,implode("",$file));

fclose($fp);

}

}

$_POST['paswd']=$pass;

$_POST['login']=$login;

}

if (isset($_POST['out'])) {

$file=file('contents/news.dat');

for($i=0;$i<count($file);$i++) {

if (trim($file[$i]) == "") unset($file[$i]);

}

for($i=0;$i<count($file);$i++) {

if (isset($_POST[$i])) unset($file[($_POST[$i])]);

}

$fp=fopen('contents/news.dat',"w");

fputs($fp,implode("",$file));

fclose($fp);

$_POST['paswd']=$pass;

$_POST['login']=$login;

}

if (!isset($_POST['exit'])) {

$file=file('contents/news.dat');

for($i=0;$i<count($file);$i++) {

if (trim($file[$i]) == "") unset($file[$i]);

$fp=fopen('contents/news.dat',"w");

fputs($fp,implode("",$file));

fclose($fp);

}

 if(!empty($_POST['paswd']) && !empty($_POST['login']) && empty($_POST['no'])){

   if($_POST['paswd']==$pass && $_POST['login']==$login){ ?>

<div id="newsLayer">

<a href="?show=content1"><img src="template/images/x.png"></a>

<form method="POST">

<fieldset>

  <legend>&nbsp; <strong> ДОБАВИТЬ НОВОСТЬ</strong> &nbsp;  </legend>

<table cellspacing="10" cellpadding="10" width="100%">

<tr><td>

<input type="text" name="news" size="110" maxlength="70">

<input type="submit" value="Добавить" name="in">

</td></tr>

</table>

</fieldset>

<fieldset>

  <legend> &nbsp;<strong> НОВОСТИ</strong> &nbsp; </legend>

<table cellspacing="10" cellpadding="10" width="100%">

<tr height="320" valign="top"><td>

<?php

$filenews = fopen('contents/news.dat', 'r');

$numnews=0;

while (!feof($filenews))

{

$mynews = fgets($filenews);

if (trim($mynews) != "") echo '<br /><input  type="checkbox" name="'.$numnews.'" value="'.$numnews.'"><font color="#000000">'. $mynews. '</font><br />';

$numnews++;

}

?>

</td></tr>

<tr align="right"><td><input type="submit" value="Удалить" name="out"></td></tr>

</table>

   </fieldset>

<table cellspacing="10" cellpadding="10" width="100%">

<tr align="right"><td>

<input type="submit" value="Выход" name="exit">

</td></tr>

</table>

</form>

</div>

<?php

   }

   else {?>

     <div id="centerLayer">

<a href="?show=content1"><img src="template/images/x.png"></a>

<form method="POST">

  <table cellspacing="25" cellpadding="10" width="100%">  

<tr><td align="center"><input type="hidden" value="no" name="no"></td></tr>

<tr><td align="center"><font color="#000000">Неправильная пара Логин-Пароль!</font></td></tr>  

<tr><td align="center"><input type="submit" value="OK" ></td></tr>       

</table>

</form>

 </div>

<?php    }

 }

 else

 {

   ?>

  <div id="centerLayer">

<a href="?show=content1"><img src="template/images/x.png"></a>

    <form method="POST">

 <table cellspacing="20" cellpadding="10" width="100%">    

<tr><td><font color="#000000">Логин</font></td><td align="center"><input type="text" name="login"></td></tr>

<tr><td><font color="#000000">Пароль</font></td><td align="center"><input type="password" name="paswd"></td></tr>     

<tr><td align="center" colspan="2"><input type="submit" value="OK"></td></tr>       

</table>

   </form>

 </div>

<?php

 }}

?>


 

А также другие работы, которые могут Вас заинтересовать

21701. ТЕОРИЯ ОБЪЕКТОВ 431 KB
  его модификации отражающие некоторые значимые конструктивные отличия объектов одного порядка порядок. Из приведённого выше определения следует что Вселенная это объект Мира более низкого порядка. 2 Объект более высокого порядка полностью включает в себя все свойства объекта низшего порядка в том числе и в потенциальной форме. Следует заметить что свойства объекта низшего порядка могут быть полностью равны свойствам объекта высшего порядка и они при этом не сольются поскольку в результате наличия у объекта более высшего порядка...
21702. ОБЪЕКТЫ ТРЕТЬЕГО ПОРЯДКА 491.5 KB
  2} Итак с помощью объектов 2го порядка мы можем изменять состояния различных объектов 1го порядка.1 В него мы введём дополнительный объект 1го порядка изменение состояния которого через универсальный интерфейс отражается на остальных объектах 1го порядка. Введём также генератор случайности дающий возможность случайно выбрать какой объект 1го порядка следует изменить наиболее сильно и в каком направлении.
21703. Модели представления знаний 96 KB
  Впервые была представлена Минским как попытка построить фреймовую сеть или парадигму с целью достижения большего эффекта понимания . Минский разработал такую схему в которой информация содержится в специальных ячейках называемых фреймами объединенными в сеть называемую системой фреймов .Возможно б что вы используете информацию содержащуюся в вашем фрейме комнаты для того чтобы распознать мебель что называется процессом сверхувниз или в контексте теории фреймов фреймодвижущим распознаванием . Он предложил систему ...
21704. Модуль Нейрокибернетика 380 KB
  В первом случае сформированная нейронная сеть выступает в роли регрессионной модели и имеет k входов и один выход то есть в качестве входных значений нейронной сети выступают предшествующие значения котировок а в качестве выхода значение на текущий момент. В автоматическом управлении нейронные сети так же не плохо справляются со своей задачей и если учесть что не нужно проводить сложных расчетов то выбор в пользу использования нейронных сетей становиться очевидным. Так же нейронные сети находят практическое применение при диагностике...
21705. Технология личностного ориентирования в географии 103.5 KB
  Содержание личностно-ориентированного образования, его средства и методы структурируются так, что позволяют ученику проявить избирательность к предметному материалу, его виду и форме, в этих целях разрабатываются индивидуальные программы обучения, которые моделируют исследовательское мышление.
21706. Методы экспертного оценивания 136 KB
  5] Анализ компетентности экспертов по взаимооценкам [0.6] Анализ компетентности экспертов по оценкам объектов [0. Типичные ситуации группового выбора: распределение конкурсной комиссией поощрений; обсуждение и согласование нескольких альтернативных законопроектов; ранжирование по перспективности внедрения образцов новых промышленных изделий производимое группой экспертов. Например для 3х объектов предпочтение одного из экспертов или он может количественно выразить интенсивность ; ; .
21707. Разделы модуля «Базовые понятия. Методы извлечения знаний» 368 KB
  Методы извлечения знаний [1] История и этапы развития искусственного интеллекта [2] Подходы к созданию систем искусственного интеллекта [3] Искусственный интеллект в России [4] Направления развития искусственного интеллекта [5] Основные определения [6] Методы извлечения знаний [7] Классификация методов извлечения знаний [8] Пассивные методы [9] Наблюдения [10] Анализ протоколов мыслей вслух [11] Лекции [12] Активные методы [13] Активные индивидуальные методы [14] Анкетирование [15] Интервью [16] Свободный диалог [17] Активные групповые методы...
21708. Модуль Жизненный цикл интеллектуальной системы 147.5 KB
  2] Этап 2: Разработка прототипной системы [1.4] Этап 4: Оценка системы [1.5] Этап 5: Стыковка системы [1.
21709. Модуль Методы представления знаний: Нечеткая логика 192 KB
  Математический аппарат Характеристикой нечеткого множества выступает функция принадлежности Membership Function. Обозначим через MFcx степень принадлежности к нечеткому множеству C представляющей собой обобщение понятия характеристической функции обычного множества. Значение MFcx=0 означает отсутствие принадлежности к множеству 1 полную принадлежность. Так чай с температурой 60 С принадлежит к множеству 'Горячий' со степенью принадлежности 080.