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

PHP как язык программирования. MySQL – компактный многопоточный сервер баз данных. Серверное программное обеспечение. Разработка агоритма, программы, блок-схемы и их использование. Автоматизированная система централизованной обработки журналов событий.

Рубрика Программирование, компьютеры и кибернетика
Вид отчет по практике
Язык русский
Дата добавления 12.07.2010
Размер файла 25,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Министерство образования Российской Федерации

Выксунский металлургический техникум им.А.А.Козерадского

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

Отчет по практике

ОП 230103.012.002.00

Руководитель проекта

Чалышев В.В.

Проект разработал

Короткова Ю.С.

Проверил

Пантелеев С.В.

г.Выкса

2007

Содержание

Аннотация

Введение

1 Анализ технического задания

2 Разработка алгоритма

3 Разработка программы

4 Блок-схема

5 Руководство по установке и использованию

Заключение

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

Аннотация

Данная пояснительная записка рассказывает о разработке системы управления базой данных MySQL, цели ее создания и способах использования. Прочитав данную пояснительную записку, пользователь сможет создать свою базу данных, и, соответственно, сможет ей управлять, приложив при этом минимальные усилия.

Введение

PHP - язык написания сценариев, внедренный в HTML. Многое из синтаксиса заимствовано из С, Java, Perl, с добавлением специфичных для PHP возможностей. Задача языка состоит в том, чтобы дать возможность Web-разработчикам легко и быстро создавать динамично изменяемые html-страницы.

Написание Web-страницы, работающей с базой данных, невероятно проста. В настоящее время поддерживаются следующие базы данных: Oracle, Adabas D, Sybase, FilePro, mSQL, Velocis, MySQL, Informix, Solid, dBase, ODBC, Unix dbm, PostgreSQL.

В последнее время у разработчиков наиболее популярна СУБД MySQL.

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

MySQL является идеальным решением для малых и средних приложений. Исходники сервера компилируются на множестве платформ. Наиболее полно возможности сервера проявляются на Unix-серверах, где есть поддержка многопоточности, что дает значительный прирост производительности.

MySQL действительно очень быстрый сервер, но для достижения этого разработчикам пришлось пожертвовать некоторыми требованиями к реляционным СУБД.

В своей работе я отразила, как управлять базой данных MySQL через язык программирования PHP 4.

1 Анализ технического задания

Тема проекта «Разработка систем управления базой данных MySQL» подразумевает под собой создание скрипта на языке программирования php4, где управление базой данных организовано по схеме "ничего лишнего", поэтому и отсутствуют некоторые функции, которыми оснащены база данных MySQL.

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

Ш просмотр созданной базы данных;

Ш изменение значения в строках таблицы;

Ш добавление строки в уже существующую таблицу, либо добавление новой таблицы;

Ш удаление таблицы;

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

Для реализации данного проекта применяется язык программирования PHP (версии 4.0).

2 Разработка алгоритма

На данном этапе разработано несколько алгоритмов, по которым можно решить эту задачу.

1) Разработать систему управления базой данных таким образом, чтобы она выполняла 4 основные функции: просмотр, изменение данных в таблицах, добавление таблиц и их удаление.

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

3) Третий вариант является доработкой второго. Если пользователь захочет распечатать базу данных, то возможен вывод документа на печать.

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

3 Разработка программы

В программе используется 6 файлов.

Файл index.html - начальный файл, он используется при запуске.

<?php

include('inc/config.php');

include('inc/function.php');

include('inc/header.php');

print "<div align=\"center\" class=\"tabtop\">Пример системы управления базой данных</div>";

list_tab('connect');

if(@$action == "connect"){

$link = mysql_pconnect($mysql_host, $mysql_login, $mysql_password) or die ("Не могу подключиться к MySQL");

mysql_select_db ("$database") or die ("$database не найдена!");

$result = mysql_query ("SELECT * FROM `$db`") or die ("Ошибка запроса");

if ($myrow = mysql_fetch_array($result))

{

echo "<table bgcolor=\"#F3E7CD\" ><tr class=\"tabletext\"><td>";

echo "<table width=\"100%\" rules=\"all\" align=\"center\" bgcolor=\"#ffffff\" bolder=\"4\">\n";

echo "<tr>

<td> Н а з в а н и е </td>

<td> И з д а т е л ь с т в о </td>

<td> Г о д в ы п у с к а </td>

</tr>\n";

do

{

print "<tr bgcolor=\"#111111\">

<td align=\"CENTER\" class=\"taband\">$myrow[nazvanie]</td>

<td align=\"CENTER\" class=\"taband\">$myrow[izdatelstvo]</td>

<td align=\"CENTER\" class=\"taband\">$myrow[god_vipuska]</td></tr>

"; }

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

echo "</table>\n";

echo "</td></tr></table>";}

print "<a target=\"blank\" href=\"/services/print.php?db=$db\">Версия для печати</a>";

}?>

Файл admin.php-в этом файле производится непосредственно обработка информации из базы данных, выполнение всех основных команд управления базой данных.

<?php

include('inc/config.php');

include('inc/function.php');

include('inc/header.php');

switch (@$actions) {

case ("add"):

print "<div align=\"center\" class=\"tabtop\">Добавить строку в таблицу</div>";

list_tab('add');

print "<hr>";

print "<div align=\"center\" class=\"tabtop\">Создать новую таблицу</div>";

print "<form action=\"?actions=add&s=2\" method=\"post\">

<table>

<tr class=\"tabletext\"><td>Имя таблицы (соответственно имени группы):</td><td><input type=\"text\" name=\"tablename\"></td></tr>

<tr><td colspan=\"2\" align=\"CENTER\"><input type=\"submit\" value=\"Создать таблицу\"></td></tr>

</table>

</form>";

if (isset($tablename) && @$s==2) {

$link = mysql_pconnect($mysql_host, $mysql_login, $mysql_password) or die ("Не могу подключиться к MySQL");

mysql_select_db ("$database") or die ("$database не найдена!");

$sql = 'CREATE TABLE `.$tablename.` ('

. ' `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, '

. ' `nazvanie` VARCHAR(100) NOT NULL, '

. ' `izdatelstvo` VARCHAR(100) NOT NULL, '

. ' `god_vipuska` VARCHAR(100) NOT NULL,'

. ' PRIMARY KEY (`id`)'

. ' )';

$result = mysql_query($sql);

print "<meta http-equiv=\"refresh\" content=\"2 url=?action=add&db=$tablename\">";

}

if (isset($snazvanie) && @$s==1) {

$link = mysql_pconnect($mysql_host, $mysql_login, $mysql_password) or die ("Не могу подключиться к MySQL");

mysql_select_db ("$database") or die ("$database не найдена!");

$sql = "INSERT INTO `$db` (nazvanie,izdatelstvo,god_vipuska) VALUES

('$snazvanie','$sizdatelstvo','$sgod_vipuska')";

$result = mysql_query($sql);

}

break;

case ("edit"):

print "<div align=\"center\" class=\"tabtop\">Изменить данные таблицы</div>";

list_tab('update');

break;

case ("del"):

print "<div align=\"center\" class=\"tabtop\">Удалить таблицу</div>";

list_tab('delete');

break;

case ("config"):

print "<div align=\"center\" class=\"tabtop\">Изменить параметры скрипта</div>";

print "

<form action=\"\" method=\"post\">

<table align=\"CENTER\" width=\"640\">

<tr class=\"tabletext\"><td>Имя пользователя базы данных:</td>

<td><input type=\"text\" name=\"new_mysql_login\" value=\"$mysql_login\"></td></tr>

<tr class=\"tabletext\"><td>Пароль для доступа к базе данных (по умолчанию пустой):</td>

<td><input type=\"text\" name=\"new_mysql_password\" value=\"$mysql_password\"></td></tr>

<tr class=\"tabletext\"><td>Имя базы данных:</td>

<td><input type=\"text\" name=\"new_database\" value=\"$database\"></td></tr>

<tr class=\"tabletext\"><td colspan=\"2\" align=\"CENTER\"><input type=\"submit\" value=\"Изменить\"></td></tr>

</table>

</form>";

if(isset($new_mysql_host) && isset($new_mysql_login) && isset($database))

{

$config = "<?php

\$mysql_host = \"".$new_mysql_host."\";

\n

\$mysql_login = \"".$new_mysql_login."\";

\n

\$mysql_password = \"".$new_mysql_password."\";

\n

\$database = \"".$new_database."\";

?>";

$fp = fopen ("inc/config.php", "w+");

fwrite ($fp, $config);

fclose ($fp);

print "<meta http-equiv=\"refresh\" content=\"0 url=admin.php?actions=config\">";

}

break;

}

//Добавление таблицы

if (@$action == 'add' && isset($db)) {

print "<form action=\"?actions=add&s=1\" method=\"post\">

<table>

<tr><td colspan=\"2\" class=\"tabtop\" align=\"CENTER\"><b>Добавление строки в

таблицу $db</b></td></tr>

<tr class=\"tabletext\"><td> Название книги: </td><td><input type=\"text\"

name=\"snazvanie\"> </tr>

<tr class=\"tabletext\"><td> Издательство: </td><td><input type=\"text\" name=\"sizdatelstvo\"> </tr>

<tr class=\"tabletext\"><td> Год выпуска: </td><td><input type=\"text\" name=\"sgod_vipuska\"> </tr>

<tr class=\"tabletext\"><td colspan=\"2\" align=\"CENTER\"><input type=\"submit\" value=\"Добавить\"></td></tr></table>

<input type=\"hidden\" name=\"db\" value=\"$db\">

</form>"; }

//Удаление таблицы

if(@$action == "delete")

{

$link = mysql_pconnect($mysql_host, $mysql_login, $mysql_password) or die ("Не могу подключиться к MySQL");

mysql_select_db ("$database") or die ("$database не найдена!");

@$result = mysql_query ("DELETE FROM `$db`");

if ($result == TRUE){

$sql = mysql_query ("DROP TABLE `$db`");

}

print "<meta http-equiv=\"refresh\" content=\"0 url=admin.php?actions=del\">";

}

//Обновление данных в таблице

if(@$action == "update"){

$link = mysql_pconnect($mysql_host, $mysql_login, $mysql_password) or die ("Не могу подключиться к MySQL");

mysql_select_db ("$database") or die ("$database не найдена!");

$result = mysql_query("SELECT * FROM `$db`") or die ("Ошибка запроса!!!");

$myrow = mysql_fetch_array($result);

echo "<div align=\"center\" class=\"tabtop\">Внести изменения в таблицу $db</div>";

echo "<table ><tr class=\"tabletext\"><td>";

echo "<table border=\"0\" cellspacing=\"1\">\n <form action=\"?submit=Submit&db=$db\" method=\"POST\">";

$i=0;

do

{

print "

<tr>

<td>$myrow[0].</td><td>

<input type=\"text\" size=\"14\" name=\"nazvanie[$i]\" value=\"$myrow[nazvanie]\"></td>

<input type=\"hidden\" name=\"id\" value=\"$myrow[0]\"> <td align=\"CENTER\">

<input type=\"text\" size=\"2\" name=\"izdatelstvo[$i]\" value=\"$myrow[izdatelstvo]\"></td>

<td align=\"CENTER\"><input type=\"text\" size=\"3\" name=\"god_vipuska[$i]\" value=\"$myrow[god_vipuska]\"></td></tr> ";

$i++;}

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

echo "

<tr><td colspan=\"12\" align=\"center\"> <input type=\"submit\" name=\"submit\" value=\"Обновить\"></td></tr></form></table>\n";

echo "</td></tr></table>";

}

if (@$submit == "Обновить"){

$link = mysql_pconnect($mysql_host, $mysql_login, $mysql_password) or die ("Не могу подключиться к MySQL");

mysql_select_db ("$database") or die ("$database не найдена!");

$ids=$id;

do {

$id--;

$result = mysql_query("UPDATE `$db` SET nazvanie='$nazvanie[$id]', izdatelstvo='$izdatelstvo[$id]', god_vipuska='$god_vipuska[$id]' WHERE id=$ids");

$ids--;

} while($id>=1);

print "<meta http-equiv=\"refresh\" content=\"0 url=admin.php?action=update&db=$db\">";

}

include('inc/footer.php');

?>

Файл konfig.php-задает основные параметры базы данных: путь к базе данных, имя пользователя базы, пароль для доступа к базе данных, и имя самой базы данных.

<?php

$mysql_host = "localhost";

$mysql_login = "root";

$mysql_password = "";

$database = "knigi";?>

Файл function.php-заменяет английский алфавит, используемый в базе данных, на русский методом замены.

<?

function authorization($username, $pass){

include("inc/config.php");

$out = FALSE;

if(strtolower($username) == strtolower($adminlogin) && $pass == $adminpass)

{

$out = TRUE;

}

return $out;

}

function list_tab($act) {

include("inc/config.php");

function replace_ru_en($tab_rows){

$tab_rows = str_replace("a", "А ", $tab_rows);

$tab_rows = str_replace("b", "Б ", $tab_rows);

$tab_rows = str_replace("с", "Ц ", $tab_rows);

$tab_rows = str_replace("d", "Д ", $tab_rows);

$tab_rows = str_replace("e", "Е ", $tab_rows);

$tab_rows = str_replace("f", "Ф ", $tab_rows);

$tab_rows = str_replace("g", "Г ", $tab_rows);

$tab_rows = str_replace("h", "Х ", $tab_rows);

$tab_rows = str_replace("i", "И ", $tab_rows);

$tab_rows = str_replace("j", "Ж ", $tab_rows);

$tab_rows = str_replace("k", "К ", $tab_rows);

$tab_rows = str_replace("l", "Л ", $tab_rows);

$tab_rows = str_replace("m", "М ", $tab_rows);

$tab_rows = str_replace("n", "Н ", $tab_rows);

$tab_rows = str_replace("o", "О ", $tab_rows);

$tab_rows = str_replace("p", "П ", $tab_rows);

$tab_rows = str_replace("q", "Ш", $tab_rows);

$tab_rows = str_replace("r", "Р ", $tab_rows);

$tab_rows = str_replace("s", "С ", $tab_rows);

$tab_rows = str_replace("t", "Т ", $tab_rows);

$tab_rows = str_replace("u", "У ", $tab_rows);

$tab_rows = str_replace("v", "В ", $tab_rows);

$tab_rows = str_replace("w", "В ", $tab_rows);

$tab_rows = str_replace("x", "Х ", $tab_rows);

$tab_rows = str_replace("y", "У ", $tab_rows);

$tab_rows = str_replace("z", "З ", $tab_rows);

return $tab_rows;

}

$link = mysql_pconnect($mysql_host, $mysql_login, $mysql_password) or die ("Не могу подключиться к MySQL");

mysql_select_db ("$database") or die ("$database не найдена!");

$result = mysql_list_tables("$database", $link); print "

<p align=\"center\"> <form action=\"?\" method=\"get\">

<input type=\"hidden\" name=\"action\" value=\"$act\">

<select name=\"db\">\n";

while($tab_rows = mysql_fetch_row($result)) {

print "<option value=\"$tab_rows[0]\">".replace_ru_en($tab_rows[0])."</option>\n";

}

print "</select>

<input type=\"submit\" value=\"Пошел\"></form></p>";

}

?>

Файл hearder.php - внешний вид и оформление страниц.

<?

@print "

<html>

<head>

</script>

<title>Разработка системы управления базой данных</title>

</head>

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

<body bgcolor=\"recbg.jpeg\" topmargin=\"10\" marginwidth=\"0\" marginheight=\"10\">

<table width=\"100%\" cellspacing=\"1\" cellpadding=\"0\" align=\"CENTER\">

<tr><td bgcolor=\"E0FFFF\">

<table width=\"100%\" cellspacing=\"5\" cellpadding=\"0\">

<tr><td>

<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">

<tr>

<td{cursor: n-resize;}>

<table cellspacing=\"0\" cellpadding=\"0\">

<tr><td>

<table cellspacing=\"0\" cellpadding=\"5\" >

<tr>

<a href=\"/index.php\" class=\"blink\"> Просмотр </a><br><br>

<a href=\"/admin.php?actions=add\" class=\"blink\"> Добавить</a><br><br>

<a href=\"/admin.php?actions=edit\" class=\"blink\"> Изменить</a><br><br>

<a href=\"/admin.php?actions=del\" class=\"blink\"> Удалить</a><br><br>

<a href=\"/admin.php?actions=config\" class=\"blink\"> Конфиг</a><br><br>

</tr>

<td></td>

</table>

</td>

<td align=\"right\" class=\"tabletext\">

</td>

</tr>

</table>

</td>

</tr>

<tr><td>

<table width=\"100%\" cellspacing=\"0\" cellpadding=\"5\">

<tr class=\"intable\">

<td bgcolor=\"#F3E7CD\" align=\"center\">

";

?>

Файл print.php- выводит базу данных на печать.

<?php

include("../inc/config.php");

include("../inc/function.php");

Error_Reporting(E_ALL & ~E_NOTICE);

print "

</head>

<body onload=\"window.print()\">

";

$link = mysql_pconnect($mysql_host, $mysql_login, $mysql_password) or die ("Не могу подключиться к MySQL");

mysql_select_db ("$database") or die ("$database не найдена!");

@$result = mysql_query ("SELECT * FROM `$db`") or die ("Ошибка запроса");

if ($myrow = mysql_fetch_array($result))

{

echo "<table bgcolor=\"#000000\" ><tr><td>";

echo "<table border=\"1\" cellspacing=\"1\">\n";

echo "<tr bgcolor=\"#99ccff\" align=\"CENTER\" class=\"tabletext\">

<td> Название </td>

<td> Издательство </td>

<td> Год выпуска </td></tr>\n";

do

{

print "<tr class=\"tabletext\" bgcolor=\"#ffffff\">

<td>$myrow[nazvanie]</td>

<td align=\"CENTER\">$myrow[izdatelstvo]</td>

<td align=\"CENTER\">$myrow[god_vipuska]</td></tr>

";

}

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

echo "</table>\n";

echo "</td></tr></table>";

}

print "<input type=\"submit\" value=\"Печать\" onclick=\"window.print()\">";

mysql_close($link);

print "

</body>

</html>";

?>

4 Блок-схема

5 Руководство по установке и использованию

Для того чтобы данная программа работала у Вас на компьютере необходимо установить серверное программное обеспечение (например, Денвер). Дальше все по пунктам.

1. Создаем каталог и даем ему имя (т.е. папку в папке home)

2. В каталоге создаем папку www

3. Запускаем Денвер

4. Производим проверку базы данных MySQL.

5. Открываем браузер (в нем прописываем домашний URL. Домашний URL такой: http://имя своего каталога/)

Заключение

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

Список используемых источников

1) Учебник php - 2002г.

2) Самоучитель по PHP.

3) Учебник PHP4-2004г.


Подобные документы

  • Функции, позволяющие работать с базой данных MySQL средствами РНР. Соединение с сервером и его разрыв. Создание и выбор базы данных. Доступ к отдельному полю записи. Комплексное использование информационных функций. Запросы, отправляемые серверу MySQL.

    лекция [3,5 M], добавлен 27.04.2009

  • Основные технологии веб-программирования. Методы отправки данных на сервер с помощью HTML-формы. PHP - Препроцессор Гипертекста. Сохранение данных в базе данных MySQL. Клиент-Сервер и технология CGI. Примеры использования PHP совместно с MySQL.

    лекция [2,9 M], добавлен 27.04.2009

  • Отличительные особенности языков программирования PHP и CSS. Возможности компактного многопоточного сервера баз данных MySQL. Системный анализ предметной области, проектирование ее инфологической модели. Создание базы данных и web-страниц сайта магазина.

    курсовая работа [1,0 M], добавлен 15.01.2013

  • Система управления базами данных (СУБД) MySQL. Установка, настройка и запуск MySQL. Окончательная настройка нового MySQL сервера. Основные утилиты и журнальные файлы. Работа с виртуальными хостами. Синтаксис для создания таблиц и управление данными.

    реферат [3,5 M], добавлен 24.06.2019

  • Классификация компьютерных сетей. Схема подключения к Интернету, каналы передачи и приема информации. Разработка сайта с использованием скриптового языка программирования PHP и базы данных MySQL (база данных о квартирах, предназначенных для продажи).

    контрольная работа [3,6 M], добавлен 09.05.2012

  • Характеристика и технические возможности СУБД MySQL. Трехуровневая структура MySQL. Требования к аппаратному обеспечению. Создание таблицы, триггеров, генераторов, хранимых процедур в MySQL. Разработка приложения для базы данных с помощью Borland Delphi.

    курсовая работа [940,7 K], добавлен 20.12.2011

  • Обоснование и выбор методологии проектирования, структурной схемы системы и разработки модели системы. Разработка сетевого плана выполнения работ, расчет технических характеристик. Описание выбора языка программирования, web–сервера и базы данных MySQL.

    дипломная работа [719,0 K], добавлен 20.09.2013

  • Технологии, используемые на стороне сервера: язык python, фреймворк Django, ORM, MVC, JSON, MySQL, веб-сервер Nginx, операционная система Linux. Разработка online хранилища данных. Программная реализация предметной области. Шаблоны вывода данных.

    дипломная работа [123,3 K], добавлен 25.04.2015

  • Назначение информационно-новостного сайта. Структура пользовательской и административной частей. Эмулятор Web–сервера Denwer 3. Типы данных, используемые в PHP. MySQL база данных. Каскадная таблица стилей CSS. Язык гипертекстовой разметки документов HTML.

    дипломная работа [2,0 M], добавлен 05.02.2013

  • Система управления базами данных MySQL. Управление БД MySQL при помощи инструмента phpmyadmin. Принципы учета товарно-материальных ценностей. Спецификация оборудования, необходимого для нормального функционирования базы данных учета. Создание скрипта.

    дипломная работа [1,4 M], добавлен 16.08.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.