83375

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

Курсовая

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

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

Русский

2015-03-14

1.09 MB

1 чел.

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

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

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

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

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

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

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

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

«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

 }}

?>


 

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

16543. Вычисление геодезических координат точек по их плоским 219.29 KB
  Лабораторная работа № 7 Вычисление геодезических координат точек по их плоским Координатам ГауссаКрюгера Общий путь решения сводиться к определению по известной абсциссе x широты В0 основания изображения плоской ординаты на поверхности B где В – искомая ши...
16544. Религия и мифология 76.33 KB
  Мифология - это форма общественного сознания, способ понимания природной и социальной действительности на ранних ступенях общественного развития. Мифы - это архаические повествования о деяниях богов и героев...
16545. Проектирование и уравнивание геодезических сетей 621.5 KB
  Курсовая работа Проектирование и уравнивание геодезических сетей Вариант 16 Карта У3567В В данной курсовой работе мы осуществляем перевод геодезических координат с эллипсоида Вальбека на эллипсоид Красовского. Переводим последние из геодезических в прямоуголь
16546. Определение коэффициентов термического расширения 492.5 KB
  Лабораторная работа Определение коэффициентов термического расширения Цель работы: Освоить методы исследования термических изменений структуры исследуемых объектов В процессе выполнения работы необходимо: освоить методику рентгенографического исследовани...
16547. Изучение устройства источника генерированного рентгеновского излучения, рентгеновских трубок 1.51 MB
  Лабораторная работа № 1 Изучение устройства источника генерированного рентгеновского излучения рентгеновских трубок. Цель работы: изучение устройства и принципов работы установок рентгеноструктурного анализа устройства рентгеновской трубки. В процессе выполн
16548. Получение рентгенограмм порошковых материалов на дифрактометре 407.5 KB
  Лабораторная работа Получение рентгенограмм порошковых материалов на дифрактометре. Цель работы: освоение способов подготовки порошковых образцов и регистрации дифракционных спектров на дифрактометре; В процессе выполнения работы необходимо: изучить реком
16549. Качественный рентгенофазовый анализ 319 KB
  Лабораторная работа Качественный рентгенофазовый анализ Цель работы: освоение метода качественного рентгеновского фазового анализа однофазных и двухфазны проб; В процессе выполнения работы необходимо: ознакомиться с сущностью метода рентгеновского фазового...
16550. Индицирование порошковых рентгенограмм 379 KB
  Лабораторная работа Индицирование порошковых рентгенограмм Цель работы: Освоение приемов индицирования порошковых рентгенограмм определение параметров элементарной ячейки исследуемого вещества В процессе выполнения работы необходимо: ознакомиться мет
16551. Расчет теоретических структурных амплитуд 236 KB
  Лабораторная работа Расчет теоретических структурных амплитуд Цель работы: Научиться определять теоретические значения структурных амплитуд исследуемых объектов для дальнейшего использования при расшифровке структур. В процессе выполнения работы необходимо...