
Разработка структуры баЗы данных
База данных – совокупность связанных данных, сохраняемая в двумерных таблицах информационной системы. Программное обеспечение информационной системы, обеспечивающей создание, ведение и совместное использование баз данных, называется системой управления базами данных (СУБД). Ниже будут рассмотрены функции РНР, предназначенные для работы с одной из самых популярных СУБД – MySQL. 1
В РНР есть функции для «общения» и с другими системами управления базами данных (например, Sybase, Oracle и т. д.), но мы будем рассматривать именно MySQL в силу ее простоты и универсальности для большинства приложений. Конечно, прежде чем работать с MySQL, нужно установить соответствующее программное обеспечение – программу - сервер MySQL. Система MySQL распространяется бесплатно и обладает достаточной мощностью для решения реальных задач. 2
При разработке сайта студии звукозаписи, были созданы три таблицы:
настройки;
Рисунок 3.1 - Структура таблицы «Настройки»
SQL код создания таблицы «Настройки».
CREATE TABLE IF NOT EXISTS `nastroiki` (
`id` int(2) NOT NULL AUTO_INCREMENT,
`page` varchar(255) NOT NULL,
`title` varchar(255) NOT NULL,
`meta_d` varchar(255) NOT NULL,
`meta_k` varchar(255) NOT NULL,
`text` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=8 ;
услуги;
Рисунок 3.2 - Структура таблицы «Услуги»
SQL код создания таблицы «Услуги».
CREATE TABLE IF NOT EXISTS `uslugi` (/* команда создания */
`id` int(4) NOT NULL AUTO_INCREMENT, /* номер записи */
`title` varchar(255) NOT NULL, /* заголовок записи */
`description` text NOT NULL, /* краткое описание записи */
`text` text NOT NULL, /* полное описание записи */
`author` varchar(255) NOT NULL, /* автор записи */
PRIMARY KEY (`id`) /* назначения первичного ключа для номера */
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=8 ;
вакансии;
Рисунок 3.3 - Структура таблицы «Вакансии»
SQL код создания таблицы «Вакансии».
CREATE TABLE IF NOT EXISTS `vacantion` ( /* команда создания */
`id` int(4) NOT NULL AUTO_INCREMENT, /* номер записи */
`title` varchar(255) NOT NULL, /* заголовок записи */
`date` date NOT NULL, /* дата создания записи */
`description` text NOT NULL, /* краткое описание записи */
`text` text NOT NULL, /* полное описание записи */
`author` varchar(255) NOT NULL, /* автор записи */
PRIMARY KEY (`id`)) /* назначения первичного ключа для номера */
ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=10 ;
Таблица «Настройки» содержит в себе информацию главного меню сайта. Из неё извлекаются данные для отображения в правой части тела сайта. Это, прежде всего заголовки страниц, метатеги для поисковых систем и основной текст, который находится на страницах сайта.
Таблицы «Услуги» и «Вакансии» схожи по построению и служат для внесения на сайт новых записей относительно одноимённых разделов. Благодаря mysql, администратору сайта не потребуется каждый раз менять весь список услуг или вакансий, или при удалении вакансии перестраивать весь порядок записей. Ему достаточно лишь будет удалить запись из базы данных, а автоматический счётчик сам подстроит записи под заданный порядок.
Перечень запросов к базе данных:
<? echo $myrow['meta_d']; ?> Описание страницы для поисковиков;
<? echo $myrow['meta_k']; ?> Ключевые слова для поисковиков;
<? echo $myrow['title']; ?> Вывод заголовка страницы из БД;
<?php include ("blocks/bd.php");?> Вывод модуля подключения к БД;
<? include("blocks/header.php"); ?> Вывод модуля шапки сайта;
<? include("blocks/left.php"); ?> Вывод модуля левой части сайта+меню;
<? include("blocks/footer.php"); ?> Вывод «подвала» сайта(нижняя часть);
<? echo $myrow['author']; ?> Вывод значение поля автора из таблицы;
<? echo $myrow['date']; ?> Вывод значение поля даты из таблицы;
<? echo $myrow['text']; ?> Вывод текстового поля из таблица;
<?mysql_query();?> Команда вызова запроса;
<?mysql_fetch_array();?> Команда формирования массива из запроса;
<?if isset();?> Команда проверки существования переменной;
<?php $db = mysql_connect ("localhost", "root", ""); Параметры подключения к БД;
mysql_select_db ("zerov_prod",$db);?> Выбор БД для подключения с заданными параметрами;
<? printf ?> Вывод на экран (аналог echo).