Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Grafichne_ta_geometrichne_modelyuvannya.doc
Скачиваний:
1
Добавлен:
06.08.2019
Размер:
299.52 Кб
Скачать

Міністерство освіти і науки, молоді та спорту України

Житомирський державний технологічний університет

Кафедра ПЗОТ

Група ЗПІК-09-2

Курс V

№ залікової 4309049

Контрольна робота

з предмету «Графічне та геометричне моделювання»

Виконала: Батьєва Т.О.

Перевірив: Морозов А.В.

Житомир, 2012 р.

Розробка сайту з використанням php і mysql

Завдання: розробити веб-сайт у вигляді онлайн-довідника вказаної у варіанті предметної області.

Варіант №20: Клієнти банку (прізвище; ім'я; по-батькові; рік, місяць, день народження; домашній телефон; місце роботи; адреса проживання; номер договору з банком; сума кредиту; сума депозиту).

Вимоги до сайту:

Будь-який користувач, який зайде на головну сторінку повинен мати можливість перегляду усіх записів та пошуку даних у базі за кожним полем.

При правильному введенні логіну та паролю, повинен відкриватися доступ до системи адміністрування, яка забезпечить додавання, редагування та видалення даних.

Передбачити можливість виходу з режиму редагування і повернення у режим користувача.

Звіт з виконаної роботи повинен містити:

Титульну сторінку.

Тему лабораторної роботи.

Завдання на лабораторну роботу.

Етапи створення сайту.

Приклад дизайну спроектованого сайту (два-три скріншоти).

Роздруківку HTML, CSS та РНР файлів.

Висновки.

Виконання роботи

Для виконання даної роботи було встановлено т.з. Джентельменський набір Web-розробника («Д.н.w.р», читається «Денвер») - набір дистрибутивів (Apache, PHP, MySQL, Perl і т.д.) і програмна оболонка, що використовуються Web-розробниками для розробки сайтів на «домашній» (локальній) Windows-машині без необхідності виходу в Інтернет.

Використовуючи phpMyAdmin в якості зручної оболонки для MySQL Server було створено базу даних з назвою bank_clients_db, що слугуватиме джерелом даних для сайту.

Схема БД зображена на малюнку:

Таблиця admins_tbl містить інформацію про облікові записи адміністраторів веб-сайту, а саме: Id адміністратора, логін, пароль, ім’я, прізвище, електронну адресу.

Таблиця clients_tbl містить відомості про клієнтів банку, такі як Id клієнта, ім’я, прізвище, по-батькові, дату народження, домашній номер, місце роботи, номер банківської угоди, суму кредиту, суму депозиту.

Для підключення БД до програмного додатку використовуємо:

mysql_connect("localhost", "root", "");

mysql_select_db("bank_clients_db");

mysql_query("SET NAMES utf8");

Приклади спроектованого дизайну сайту:

Початкова сорінка

Меню адміністратора

Перегляд інформації

Пошук інформації

Редагування даних

Лістинг

Style.Css

body

{background-color: #392b22;

margin:0;

min-width: 900px;

font-family: Calibri;

font-size: 11pt;}

#header

{height: 100px;

background-color: #2e060e;

font-size: 25pt;

color: white;

line-height: 80pt;

text-align:center;}

#menu

{width:200px;

background-color: #e9bca5;

float:left;

margin-top: 30px;

margin-left: 30px;

margin-bottom: 30px;

border:3px;

border-color: #2d060c;

border-style: solid;}

#menu ul

{list-style-type: none;

margin:0;

padding-left:5px;

padding-right:5px;

font-weight: bolder;}

#menu ul a, #content table a

{text-decoration: none;

color: #2d060c;

display: block;

padding: 3px;}

#menu ul a:hover, #content table a:hover

{color: #e9bca5;

background-color: #2e060e;}

#menu h1, #content h1

{font-size: 14px;

background-color: #2e060e;

color: white;

padding: 3px 10px;

margin: 0;}

#content

{margin: 30px 10px 30px 300px;

border:3px;

border-color: #2d060c;

border-style: solid;

color: #2d060c;

background-color: #e9bca5;

min-height: 175px;}

#content table

{text-align:center;

margin: 10px;

border-collapse:collapse;}

#content table td

{border-color: #2e060e;

border-style: solid;

color: #2e060e;}

#content thead td

{font-weight: bold;

background-color:#2e060e;

color: white;

text-align:center;

padding: 1px 3px 1px 3px;}

.message

{color: green;

padding:3px;

font-weight: bold;}

.error

{color: #2e060e;

padding:3px;

font-weight: bold;}

#footer

{padding:3px;

clear: both;

background-color: #2e060e;

color: white;

text-align:center;}

#menu form input[type='text'],

#menu form input[type='password']

{width: 100px;

font-size:10px;}

index.php

<? session_start();

mysql_connect("localhost", "root", "");

mysql_select_db("bank_clients_db");

mysql_query("SET NAMES utf8");

if (isset($_GET['oper']))

{

if ($_GET['oper'] == 'logout')

{

unset($_SESSION['admin']);

}

if (isset($_GET['success']) && $_GET['oper'] == 'add')

$message = "Данные успешно были добавлены!";

if (isset($_SESSION['admin']) && $_GET['oper'] == 'add' && isset($_POST['client_last_name']))

{

$sql = "INSERT INTO clients_tbl (client_first_name,client_last_name,client_patronymic_name,client_birth_date,client_home_phone, client_company, client_home_address, client_contract_number, client_credit, client_deposit) VALUES ('{$_POST['client_first_name']}', '{$_POST['client_last_name']}', '{$_POST['client_patronymic_name']}', '{$_POST['client_birth_date']}', '{$_POST['client_home_phone']}', '{$_POST['client_company']}', '{$_POST['client_home_address']}', '{$_POST['client_contract_number']}', '{$_POST[' client_credit']}', '{$_POST['client_deposit']}')";

mysql_query($sql);

header("Location: index.php?oper=add&success");

}

if (isset($_SESSION['admin']) && $_GET['oper'] == 'edit' && isset($_POST['client_last_name']))

{

$sql = "UPDATE clients_tbl SET client_first_name = '{$_POST['client_first_name']}', client_last_name = '{$_POST['client_last_name']}', client_patronymic_name = '{$_POST['client_patronymic_name']}', client_birth_date = '{$_POST['client_birth_date']}', client_home_phone = '{$_POST['client_home_phone']}', client_company = '{$_POST['client_company']}', client_home_address = '{$_POST['client_home_address']}', client_contract_number = '{$_POST['client_contract_number']}', client_credit = '{$_POST['client_credit']}', client_deposit = '{$_POST['client_deposit']}'WHERE client_id = '{$_GET['id']}'";

mysql_query($sql);

$message = "Данные успешно были сохранены!";

}

if (isset($_SESSION['admin']) && $_GET['oper'] == 'profile' && isset($_POST['admin_login']))

{

$sql = "UPDATE admins_tbl SET admin_login = '{$_POST['admin_login']}', admin_password = '{$_POST['admin_password']}', admin_first_name = '{$_POST['admin_first_name']}', admin_last_name = '{$_POST['admin_last_name']}', admin_email = '{$_POST['admin_email']}' WHERE admin_id = '{$_SESSION['admin']['admin_id']}'";

mysql_query($sql);

$message = "Данные успешно были сохранены!";

}

if (isset($_SESSION['admin']) && $_GET['oper'] == 'delete' && isset($_GET['id']))

{

$sql = "DELETE FROM clients_tbl WHERE client_id = '{$_GET['id']}'";

mysql_query($sql);

$message = "Данные успешно были удалены!";

}

}

if (isset($_POST['login']) && isset($_POST['password']))

{

$login = $_POST['login'];

$pass = $_POST['password'];

$sql = "SELECT * FROM admins_tbl WHERE admin_login = '{$login}' AND admin_password ='{$pass}'";

$res = mysql_query($sql);

$count = mysql_num_rows($res);

if ($count != 0)

{

$_SESSION['admin'] = mysql_fetch_assoc($res);

} else

{

$auth_message = "Неправильный ввод логина или пароля!";

}

}

?>

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

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

<head>

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

<title>Bank Customers</title>

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

</head>

<body>

<div id="header"> Клиенты банка

</div>

<div id="menu">

<?

if (!isset($_SESSION['admin'])) include("templates/auth_form.tpl"); else

include("templates/admin_menu.tpl"); ?>

</div>

<div id="content">

<?

if (isset($_GET['oper']))

{

if (isset($_SESSION['admin']) && $_GET['oper'] == 'add')

{

include("templates/client_add.tpl");

}

if (isset($_SESSION['admin']) && $_GET['oper'] == 'edit')

{

include("templates/client_edit.tpl");

if (isset($_GET['id']))

{

include("templates/client_edit_record.tpl");

}

}

if (isset($_SESSION['admin']) && $_GET['oper'] == 'delete')

{

include("templates/client_delete.tpl");

}

if (isset($_SESSION['admin']) && $_GET['oper'] == 'profile')

{

include("templates/admin_edit_record.tpl");

}

if ($_GET['oper'] == 'view')

{

include("templates/client_view.tpl");

}

if ($_GET['oper'] == 'search')

{

include("templates/client_search.tpl");

}

}

?>

</div>

<div id="footer">© Батьева</div>

</body>

</html>

auth_form.tpl

<h1>Главное меню</h1>

<ul>

<li><a href="index.php?oper=view">Просмотр данных</a></li>

<li><a href="index.php?oper=search">Поиск данных</a></li>

</ul>

<h1>Вход на сайт</h1>

<div class="error"><? echo $auth_message; ?></div>

<form name="auth" method="post">

<table>

<tr>

<td>Логин</td>

<td><input type="text" name="login" /></td>

</tr>

<tr>

<td>Пароль</td>

<td><input type="password" name="password" /></td>

</tr>

<tr>

<td></td>

<td><input type="submit" value="Войти" /></td>

</tr>

</table>

</form>

admin_menu.tpl

<h1>Главное меню</h1>

<ul>

<li><a href="index.php?oper=profile">Профиль администратора</a></li>

<li><a href="index.php?oper=view">Просмотр данных</a></li>

<li><a href="index.php?oper=search">Поиск данных</a></li>

<li><a href="index.php?oper=add">Добавление данных</a></li>

<li><a href="index.php?oper=edit">Редактирование данных</a></li>

<li><a href="index.php?oper=delete">Удаление данных</a></li>

<li><a href="index.php?oper=logout">Выйти</a></li>

</ul>

admin_edit_record.tpl

<?

$sql = "SELECT * FROM admins_tbl WHERE admin_id = '{$_SESSION['admin']['admin_id']}'";

$res = mysql_query($sql);

$row = mysql_fetch_assoc($res);

?>

<h1>Редактирование профиля администратора</h1>

<div class="message"><? echo $message; ?></div>

<form name="edit" method="post">

<table>

<tr>

<td>Логин</td>

<td><input type="text" name="admin_login" value="<? echo $row['admin_login']; ?>" required="required"/></td>

</tr>

<tr>

<td>Пароль</td>

<td><input type="password" name="admin_password" value="<? echo $row['admin_password']; ?>" required="required"/></td>

</tr>

<tr>

<td>Фамилия</td>

<td><input type="text" name="admin_last_name" value="<? echo $row['admin_last_name']; ?>" required="required"/></td>

</tr>

<tr>

<td>Имя</td>

<td><input type="text" name="admin_first_name" value="<? echo $row['admin_first_name']; ?>" required="required"/></td>

</tr>

<tr>

<td>Электронная почта</td>

<td><input type="text" name="admin_email" value="<? echo $row['admin_email']; ?>" required="required"/></td>

</tr>

<tr>

<td></td>

<td><input type="submit" value="Сохранить" /></td>

</tr>

</table>

</form>

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]