Разработка Web-приложения зоопарка

Автор: Пользователь скрыл имя, 23 Апреля 2014 в 09:02, курсовая работа

Краткое описание

Главная цель данной работы является разработка Web-приложения зоопарка.
Приложение должно быть удобным для пользователя, включать в себя следующие возможности:
Просмотр данных
Удаление данных из таблиц
Добавление данных в таблицы
Создание запросов к таблицам базы данных

Файлы: 1 файл

курсовая.doc

— 4.81 Мб (Скачать)

 

Таблица 3-Объект страна

Имя поля

Тип данных

id_strana

int

name_s

varchar(20)


Таблица 4-Объект обслуживание

Имя поля

Тип данных

id_service

int

id_sotr

int

id_animals

int


Таблица 5-Объект сотрудники

Имя поля

Тип данных

id_sotr

int

id_post

int

surname

varchar(20)

name

varchar(20)

staj

varchar(20)


 

Таблица 6-Объект должности

Имя поля

Тип данных

id_post

int

name

varchar(20)


На рисунке 2 показана физическая модель базы данных.

Рисунок 2- Физическая модель базы данных

 

 

  • 2.4 Коды SQL запросов на создание таблиц

 

  1. Таблица animals:

CREATE TABLE animals

(

id_animals  INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,

id_korm  INTEGER NOT NULL,

id_strana  INTEGER NOT NULL,

name  VARCHAR(20) NOT NULL,

age  VARCHAR(20) NOT NULL,

     ves VARCHAR(20) NOT NULL

)

  1. Таблица strana:

CREATE TABLE strana

(

id_strana  INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,

name_s  VARCHAR(20) NOT NULL

)

  1. Таблица korm:

CREATE TABLE korm

(

id_korm INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,

name_k  VARCHAR(20) NOT NULL

)

  1. Таблица service:

CREATE TABLE service

(

id_ service  INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,

id_sotr  INTEGER NOT NULL,

id_animals  INTEGER NOT NULL

)

  1. Таблица sotr:

CREATE TABLE sotr

(

id_sotr  INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,

id_post  INTEGER NOT NULL,

surname  VARCHAR(20) NOT NULL,

name  VARCHAR(20) NOT NULL,

     staj VARCHAR(20) NOT NULL

)

  1. Таблица post:

CREATE TABLE post

(

id_post  INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,

name   VARCHAR(20) NOT NULL

)

3.  Разработка Web-приложения

3.1.  Общая модульная схема

Рисунок 3-Общая модульная схема

    1. Описание функциональности модулей

 

Имя модуля

Описание

1

index.php

главная страница, содержит описание внешнего вида приложения, а так же вызовов других модулей.

2

titles.php

содержит список таблиц, их русское название, описание заголовков столбцов таблиц необходимые для работы «universal_module.php»

3

universal_module.php

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

4

config.php

конфигурация доступа к базе данных.


 

3.3 Описание модулей

Созданное web-приложение состоит из 4 модулей (php файлов).

1. index.php

Начальная страница. (Рисунок 3)

Рисунок 4- Главная страница

 

2. config.php

Данный файл содержит настройки конфигурации доступа к базе данных. Такие как:

$dbhost = "localhost";

$dbuser = "root";

$dbpass = "";

$dbname = "db_zoopark";

Кроме этого, в данном файле храниться функция, реализующая соединение с базой данных. Которая используется в дальнейшем в других модуля.

function dbconnect($dbhost,$dbuser,$dbpass,$dbname) {

$db=mysql_pconnect("$dbhost","$dbuser","$dbpass");

if (! $db) {

echo "Не возможно соедениться  с БД";

exit;

};

if (! (mysql_select_db("$dbname"))) {

echo "Не возможно найти  нужную БД ($dbname)";

exit;

}

mysql_query("SET NAMES 'utf8'");

return $db;

};

3. titles.php

Содержит необходимые служебные данные о логической и физической структуре таблиц в базе данных. Необходим для правильной работы скриптов «universal_module.php» файла.

4. universal_module.php

Файл содержащий php скрипты для выполнение базовых функций работы с записями таблиц. Такие как просмотр 1 записи, просмотр всех записей, фильтрация записей, сортировка записей, добавление, изменение и удаление записей.

 

 

 

 

 

 

 

 

 

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

 

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

На рисунке 5 рассмотрим общие элементы интерфейса на примере главной страницы.

 

 

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

 

 

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

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

Есть 3 основных вида центральной части:

    1. На рисунке 6 показан вывод данных (больше 1 записи);

Рисунок 6-Просмотр всех записей таблицы Животные

    1. На рисунке 7 показана форма для редактирования (изначально,

поля заполнены их текущими значениями);

 

Рисунок 7- Редактирование записи

 

Исправим ошибку допущенную, к примеру, во время заполнения стажа работы. (Рисунок 8)

 

 

Рисунок 8-Новые значение полей записи

 

На рисунке 9 показан результат выполненного запроса.

Рисунок 9- Результат выполнения запрос

 

 

 

    1. Форма для добавления данных. (Рисунок 10)

 

 

Рисунок 10- Добавление записи

Проверим работу данной формы. Введем произвольные данные для записи (на данной же записи, в дальнейшем протестируем правильность  удаления данных).(Рисунок 11)

 

 

Рисунок 11- Добавление новой записи в таблицу Память

 

 

 

На рисунке 12 показано, что данные были успешно добавлены.

 

Рисунок 12- Просмотр списка всех записей

 

    1. На рисунке 13 показана форма для удаления данных.

 

Рисунок 13-Форма для удаление записей по id

 

Удалим, добавленную нами ранее запись «11». Для этого введем значение 11 в поле, и нажмем удалить.(Рисунок 14)

 

Рисунок 14. Результат удаления записи

 

Вновь, откроем таблицу Память, чтобы убедиться, что запись была удалена.(Рисунок 15)

 

 

                                          Рисунок 15- Просмотр всех записей таблицы Память

Стоит так же отметить, что для удобства операция редактирования на странице просмотра одной записи размещена гиперссылка «Редактировать», а так же соответствующая кнопка во 2ом столбце функциональных кнопок на странице просмотра всех записей. Аналогично и с удалением.(Рисунок 16)

 

Рисунок 16-Доступ к удалению и редактированию через функцию просмотра 1 записи

 

 

Поиск информации по выбранному полю. (Рисунок 17)

Рисунок 17-Поиск данных

 

Сортировка данных осуществляется по выбранному полю как по-возрастанию так и по-убыванию. Осуществим сортировку данных по полю Название по-убыванию. (Рисунок 18)

Рисунок 18-Сортировка данных

Заключение

 

 

 

В ходе выполнения данного курсового проекта были выполнены следующие цели и задачи:

• разработано, создано и протестировано Web-приложение «Зоопарк» с использованием JavaScript, PHP и СУБД MySQL;

• приложение содержит необходимую информацию, простой и удобный интерфейс, выполняет поставленные функции.

В итоге данный проект имеет:

• страницы с информацией;

• систему поиска и сортировки данных;

• систему добавления  и удаления данных;

Разработанный проект, предоставляет широкие возможности администратору зоопарка для работы с данными о животных.

Реализованное  приложение, обеспечивает возможность пользователю добавлять, удалять, изменять, сортировать, фильтровать данные, а также осуществлять поиск данных.

Цели, поставленные при выполнении курсовой работы, были достигнуты.

 

 

 

 

 

 

 

 

 

 

Список использованной литературы

 

1. Гарнаев, А.Ю. WEB – программирование на Java и Java Script. [Текст]/ А.Ю. Гарнаев –СПб.: БХВ - Петербург, 2003. – 264 с.

2. Дронов, В.А. Основы SQL: Курс лекций. Учебное пособие [Текст]/ В.А. Дронов –– М.: ИНТУИТ.РУ, 2004. – 368 с.

3. Кузнецов, М.В. PHP и MySQL для начинающих [Текст]/ М.В.

Кузнецов – Кудиц-образ, 2005.–384 с.

4. Полякова, Л.Н. Основы SQL: Курс лекций. Учебное пособие [Текст]/ Л.Н. Полякова –– М.: ИНТУИТ.РУ, 2004. – 368 с.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложение

Программный код модулей

 

config.php

 

<?php

$dbhost = "localhost";

$dbuser = "root";

$dbpass = "";

$dbname = "db_zoopark";

 

function dbconnect($dbhost,$dbuser,$dbpass,$dbname) {

$db=mysql_pconnect("$dbhost","$dbuser","$dbpass");

if (! $db) {

echo "Не возможно  соедениться с БД";

exit;

};

if (! (mysql_select_db("$dbname"))) {

echo "Не возможно  найти нужную БД ($dbname)";

exit;

}

mysql_query("SET NAMES 'utf8'");

return $db;

};

?>

index.php

<?php

require "titles.php";

require "config.php";

?>

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

 

<html>

<head>

<title>Зоопарк</title>

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

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

</head>

<body>

<div style="position:absolute;left:-3072px;top:0"><div class="width=100% height=100% align-left"></div><div class="align-left" width="1"></div</div>

<div id="wrapper">

 

<div id="header">

<div id="menu">

<ul>

<li class="current_page_item"></li>

<li><a href="<?php echo $_SERVER['PHP_SELF']."?table=".$table_name[0]."&action=showall";?>">Животные</a></li>

<li><a href="<?php echo $_SERVER['PHP_SELF']."?table=".$table_name[1]."&action=showall";?>">Страна</a></li>

<li><a href="<?php echo $_SERVER['PHP_SELF']."?table=".$table_name[2]."&action=showall";?>">Кормление</a></li>

<li><a href="<?php echo $_SERVER['PHP_SELF']."?table=".$table_name[3]."&action=showall";?>">Обслуживание</a></li>

<li><a href="<?php echo $_SERVER['PHP_SELF']."?table=".$table_name[4]."&action=showall";?>">Сотрудники</a></li>

<li><a href="<?php echo $_SERVER['PHP_SELF']."?table=".$table_name[5]."&action=showall";?>">Должности</a></li>

</ul>

</div>

</div>

<div id="logo">

 

<h1><a href="index.php">Зоопарк</a></h1><br><H2></H2>

</div>

</div>

<div id="page">

 

<div id="content">

<div class="post">

<h1 class="title">

<a href="<?php if (@ $_GET['table']) { echo $_SERVER['PHP_SELF']."?table=".@ $_GET['table']."&action=showall"; };?>">Просмотр</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<a href="<?php if (@ $_GET['table']) { echo $_SERVER['PHP_SELF']."?table=".@ $_GET['table']."&action=addform"; };?>">Добавление</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<a href="<?php if (@ $_GET['table']) { echo $_SERVER['PHP_SELF']."?table=".@ $_GET['table']."&action=deleteform"; };?>">Удаление</a></h1>

<div class="entry">

Информация о работе Разработка Web-приложения зоопарка