Разработка Web-сайта с управляемым контентом: Новостной портал для программистов

Автор работы: Пользователь скрыл имя, 29 Апреля 2013 в 17:54, курсовая работа

Описание

Целью данной курсовой работы является автоматизированое размещение статей и уроков администраторами, хранения информации, а также обеспечение удаленного доступа.
При выполнении курсовой работы были использованы: операционная система Windows и настроенный локальный сервер (Denver + PHP). Для написания сценария информационно-программного изделия был использован язык PHP. Написание сценариев на PHP было осуществлено с помощью приложения Adobe Dreamweaver CS3, обеспечивающего удобное редактирование различных скриптов.

Содержание

Введение…………………………………………………………………………….5
1 Теоритическа часть……………………………………………………………….6
1.1 Предметная область, цель создания и группы пользователей информационно-программного изделия………………………………………….6
1.2 Структурная модель информационно-программного изделия…………….6
2. База данных………………………………………………………………………12
2.1 Структурная модель БД………………………………………………………..12
2.2 Физическая реализация БД…………………………………………….………12
3 Проект удаленного доступа в рамках информационного - програмного изделия………………………………………………………………………………14
3.1 Сетевая организация распределения приложения в архитектуре «клиент-сервер»………………………………………………………………………………14
3.2 Требования к ресурсам сервера и ПК клиента……………………….………15
3.3 Пользовательский интерфейс………………………………………………….16
4 Защита от несанкционированного доступа……………………………………..14
Заключение……………………………………………………………….…………18
Список литературы…………………………………………………………………19

Работа состоит из  1 файл

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

— 726.73 Кб (Скачать документ)

Поля  таблицы «settings» и их атрибуты приведены в рисуноке 1.5

Рисунок 1.5 Таблица «Главные страницы» базы данных

 

Поля  таблицы «articles» и их атрибуты приведены в рисунке 1.6

Рисунок 1.6 Таблица «Статьи» базы данных

 

Поля  таблицы «lessons» и их атрибуты приведены в рисунке 1.7

Рисунок 1.7 Таблица «Уроки» базы данных

 

Поля  таблицы «userslist» и их атрибуты приведены в рисунке 1.8

Рисунок 1.8 Таблица «Пользователи» базы данных

 

 

3. Проект удаленного доступа в рамках информационно-программного изделия

3.1 Сетевая организация распределения приложения в архитектуре «клиент-сервер»

Информационно-программное  изделие организовано по архитектуре  «клиент – сервер» В этом случае сетевое программное обеспечение  предполагает не только совместное использование  ресурсов сети, но и обработку на сервере по запросам пользователей. Программное обеспечение в данном случае состоит из двух частей: сервера  и клиента. Программа клиент выполняется  на локальном компьютере пользователя, она посылает запросы программе-серверу  и принимает от нее требуемую  информацию. Программа-сервер работает на компьютере общего доступа, производит обработку поступающих к ней запросов и возвращает клиенту требуемые результаты. Схема архитектуры представлена на рис. 1.9

Клиент


Сервер


Запрос


Ответ

Рисунок 1.9 Схема архитектуры «клиент-сервер»

3.2 Требования к ресурсам сервера и ПК клиента

Рекомендуемые технические средства и операционная система: ПЭВМ типа IBM PC, локальная сеть, операционная система Microsoft Windows 98/2000/XP/Vista/7. При создании информационно-программного изделия рекомендуется использовать пакеты серверных приложений локальный  сервер (MySQL + Apache2 + PHP5) или TopServer или Denwer, содержащие web-сервер Apache, интерпретатор PHP, СУБД MySQL. При создании и отладке  сценариев на языке PHP, а также  при создании web-страниц на языке HTML, рекомендуется использовать редактор текстов программ Notepad++.

 

 

 

3.3 Пользовательский интерфейс

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

При начальной загрузке системы запускается  начальная страница, представленная на риc. 2.0

Рисунок 2.0 Начальная страница сайта

 

 

 

4. Защита от несанкционированного  доступа

Данная  задача была решена средствами языка PHP: для этого была создана защита от несанкционированного доступа к  информационным ресурсам.

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

Если  администратор правильно ввел пароль, то он переходит на соответствующую страницу. Данные для входа в систему были описаны выше.

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

Для того чтобы войти в систему администрирования, не обходимо вести в строке названия сайта /admin и нажать Enter.

Данные  для входа:

Login: user  Pass: 123456 (Администратор).

Для администраторов, определенных выше, загружаються режим администратора.

На рисунке 2.1 представлен вид режима администратора

Рисунок 2.1 Режим администратора

 

Заключение

В результате выполнения курсовой работы, был разработан и опубликован  в сети Internet web-ресурс «Новостной портал для программистов», доступный для ознакомления по адресу: http://useras.ru/

Данный web-ресурс разрабатывался для обучения начинающих программистов. Разрабатываемое информационно - программное изделие должно упростить работу преподователей.

При выполнении курсовой работы был использован  локальный сервер (Denver + PHP5). Для написания сценария информационно-программного изделия был использован язык PHP. Написание сценариев на PHP было осуществлено с помощью приложения Adobe Dreamweaver CS3, обеспечивающего удобное редактирование различных скриптов.

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

 

 

Список  использованных источников

 

  1. Лещев Д. Создание интерактивного web-сайта: учебный курс / Д. Лещев. –  СПб.: Питер, 2003. – 544 с.
  2. Мельников П.П. Технология разработки HTML-документов: Учеб. Пособие. – М.: Финансы и статистика, 2005. – 112 с.
  3. Попов В.П. Основы информационных и телекоммуникационных технологий. Сетевые информационные технологии: Учеб. Пособие. – М.: Финансы и статистика, 2005. – 244 с.
  4. Обучающий курс сайтостроения Е.Попова «PHP+MySQL для начинающих»

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложения А

Листинг программы

index.php

<?php

include ("blocks/bd.php"); /*Соединяемся с базой*/

$result = mysql_query("SELECT title,meta_d,meta_k,text FROM settings WHERE page='index'",$db); /*Выборка с базы в переменную*/

$myrow = mysql_fetch_array($result); /*Выборка с базы в масив*/

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta name="description" content="<?php echo $myrow['meta_d']; ?> ">

<meta name="keywords" content="<?php echo $myrow['meta_k']; ?> ">

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

<title><?php echo $myrow['title']; ?></title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="690" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="main_border">

<!--Подключаем шапку сайта-->

<? include("blocks/header.php");   ?>

  <tr>

    <td><table width="690" border="0" cellspacing="0" cellpadding="0">

      <tr>

<!--Подключаем левый блок сайта-->

<? include ("blocks/lefttd.php");  ?>     

        <td valign="top">

        <?php echo $myrow['text']; ?>      

        </td>

      </tr>

    </table></td>

  </tr>

<!--Подключаем нижний графический элемент--> 

<? include ("blocks/footer.php"); ?> 

</table>

</body>

</html>

 

 

 

 

bd.php

<?

$db = mysql_connect ("localhost","php","12345");

mysql_select_db("phpsite",$db);

?>

 

header.php

<tr>

<td><img src="img/header.jpg" width="690" height="120"></td>

</tr>

 

lefttd.php

  <td width="182px" valign="top" class="left">

        <p align="center" class="title">Навигация</p>

<div id="coolmenu">

<a href="index.php">Главная</a>

<a href="articles.php">Статьи</a>

<a href="lessons.php">Уроки</a>

<a href="contacts.php">О нас</a>

</div> 

 

<p align="center" class="title2">Рассылка</p>

<div class="formm" width="80%"> 

<p class='form3'> Подписывайтесь на нашу рассылку  и получайте свежие уроки, статьи  и новости, прямо в свой почтовый  ящик!</p>

<form name="SR_form" method="post" target="_blank" action="http://smartresponder.ru/subscribe.html" onsubmit="return SR_submit(this)">

<input type=hidden name=version value="1">

<input type=hidden name=tid value="34769">

<input type=hidden name=uid value="27025">

<input type=hidden name=charset value="windows-1251">

<input type=hidden name=lang value="1">

<input type=hidden name="did[]" value="9267">

 <p class='form1'> Имя на русском:

 <input type="text" name="field_name_first" size=23 value='' maxlength=50 style='border: 1px #c1c1c1 solid; font-family: Verdana; font-size: 11px; width:120px; color:#424242;'></p>

<p class='form1'> Email адрес:

<input type=text name="field_email" size=23 value='' maxlength=50   style='margin:0px; padding:0px; border: 1px #c1c1c1 solid; font-family: Verdana; font-size: 11px; width:120px; color:#424242;'></p>

<p style='margin:5px;margin-top:10px; padding:0px;'>

<input type="submit" name="SR_submitButton" value='Подписаться' style=' font-family: Verdana, sans-serif; border:1px gray solid; font-size: 11px; width:120px; height:19px;   background-Color:#f6f6f6; color:#424242; font-weight:bold; margin-left:10px;' >

</p>

</form>

</div>

 

footer.php

<tr>

    <td><img src="img/footer.jpg" width="690" height="15"></td>

  </tr>

 

articles.php

<?php

include ("blocks/bd.php"); /*Соединяемся с базой*/

$result = mysql_query("SELECT title,meta_d,meta_k,text FROM settings WHERE page='articles'",$db);

$myrow = mysql_fetch_array($result);

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta name="keywords" content="<?php echo $myrow['meta_k']; ?>">

<meta name="description" content="<?php echo $myrow['meta_d']; ?>">

 

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

<title><?php echo $myrow['title']; ?></title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

 

<body>

<table width="690" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="main_border">

 

<!--Подключаем шапку сайта-->

<? include("blocks/header.php");   ?>

 

  <tr>

    <td><table width="690" border="0" cellspacing="0" cellpadding="0">

      <tr>

<!--Подключаем левый блок сайта-->

<? include ("blocks/lefttd.php");  ?>     

        <td valign="top">

        <?php echo $myrow['text']; ?>

       

        <?php 

 

$result = mysql_query ("SELECT id,title,description,author,date FROM articles",$db);

 

$myrow = mysql_fetch_array ($result);

 

do {

       

printf ("<table align='center' class='lesson'>

        

<tr>

         <td class='lesson_title'>

<p class='lesson_name'><a href='view_article.php?id=%s'>%s</a></p>

<p class='lesson_adds'>Дата добавления: %s</p>

<p class='lesson_adds'>Автор статьи: %s</p></td>

         </tr>

        

<tr>

         <td>%s</td>

         </tr>

        

</table><br><br>", $myrow["id"], $myrow["title"],$myrow["date"],$myrow["author"],$myrow["description"]);

     

}

 

while ($myrow = mysql_fetch_array ($result)); 

?> 

          </td>

      </tr>

    </table></td>

  </tr>

<!--Подключаем  нижний графический элемент--> 

<?  include ("blocks/footer.php");        ?> 

</table>

</body>

</html>

 

lessons.php

<?php

include ("blocks/bd.php"); /*Соединяемся с базой*/

$result = mysql_query("SELECT title,meta_d,meta_k,text FROM settings WHERE page='lessons'",$db);

$myrow = mysql_fetch_array($result);

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta name="description" content="<?php echo $myrow['meta_d']; ?>">

<meta name="keywords" content="<?php echo $myrow['meta_k']; ?>">

 

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

<title><?php echo $myrow['title']; ?></title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

 

<body>

<table width="690" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="main_border">

 

<!--Подключаем шапку сайта-->

<? include("blocks/header.php");   ?>

 

  <tr>

    <td><table width="690" border="0" cellspacing="0" cellpadding="0">

      <tr>

<!--Подключаем левый блок сайта-->

<? include ("blocks/lefttd.php");  ?>     

        <td valign="top">

          <p><?php echo $myrow['text']; ?>          </p>

         

         

<?php 

 

$result = mysql_query ("SELECT id,title,description,author,date FROM lessons",$db);

 

$myrow = mysql_fetch_array ($result);

 

do {

       

printf ("<table align='center' class='lesson'>

        

<tr>

         <td class='lesson_title'>

<p class='lesson_name'><a href='view_lesson.php?id=%s'>%s</a></p>

<p class='lesson_adds'>Дата добавления: %s</p>

<p class='lesson_adds'>Автор урока: %s</p></td>

         </tr>

        

<tr>

         <td>%s</td>

         </tr>

        

</table><br><br>", $myrow["id"], $myrow["title"],$myrow["date"],$myrow["author"],$myrow["description"]);

     

}

 

while ($myrow = mysql_fetch_array ($result)); 

?>  

 

          

          <p>&nbsp;</p></td>

      </tr>

    </table></td>

  </tr>

<!--Подключаем нижний графический элемент--> 

<?  include ("blocks/footer.php");        ?> 

</table>

</body>

</html>

 

contacts.php

<?php

include ("blocks/bd.php"); /*Соединяемся с базой*/

$result = mysql_query("SELECT title,meta_d,meta_k,text FROM settings WHERE page='contacts'",$db);

$myrow = mysql_fetch_array($result);

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta name="keywords" content="<?php echo $myrow['meta_k']; ?>">

<meta name="description" content="<?php echo $myrow['meta_d']; ?>">

 

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

<title><?php echo $myrow['title']; ?></title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

 

<body>

<table width="690" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="main_border">

 

<!--Подключаем шапку сайта-->

<? include("blocks/header.php");   ?>

 

  <tr>

    <td><table width="690" border="0" cellspacing="0" cellpadding="0">

      <tr>

<!--Подключаем левый блок сайта-->

<? include ("blocks/lefttd.php");  ?>     

        <td valign="top">

        <?php echo $myrow['text']; ?>

        </td>

      </tr>

    </table></td>

  </tr>

<!--Подключаем нижний графический элемент--> 

<?  include ("blocks/footer.php");        ?> 

</table>

</body>

</html>

 

view_article.php

<?php

include ("blocks/bd.php"); /*Соединяемся с базой*/

 

if (isset($_GET['id'])) {$id = $_GET['id'];}

 

$result = mysql_query("SELECT * FROM articles WHERE id='$id'",$db);

$myrow = mysql_fetch_array($result);

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Информация о работе Разработка Web-сайта с управляемым контентом: Новостной портал для программистов