Разработка Web-приложения Учёт оборудования с использованием PHP и СУБД MySQL

В данном курсовом проекте передо мной поставлена задача создать Интернет-приложение «Учёт оборудования», используя СУБД MySQL и язык программирования для Интернет РНР, который будет служить пользовательским интерфейсом для работы с данной базой данных.

PHP – это серверный (или серверной стороны) язык сценариев, разработанный специально для Web. В HTML-страницу можно внедрить PHP-код, который будет выполняться при каждом её посещении. PHP-код интерпретируется Web-сервером и генерирует HTML-код или другой вывод, наблюдаемый посетителями страницы.

PHP – это продукт с открытым исходным кодом (Open Source), то есть вы имеете доступ к исходному коду. Его можно использовать, изменять и свободно распространять другим пользователям или организациям.

Первоначально PHP являлось сокращением от Personal Home Page (“Персональная домашняя страница” ), но затем его название было изменено в соответствии с соглашением по рекурсивному именованию GNU (GNU=Gnu’s Not Unix) и теперь означает PHP Hypertext Preprocessor (“Гипертекстовый препроцессор PHP ).

В настоящее время основной версией PHP является четвёртая. Эта версия характеризуется несколькими существенными языковыми усовершенствованиями.

Язык РНР очень практичен, а так же он способен предоставлять программисту средства для быстрого и эффективного решения поставленных перед ним задач. Еще язык РНР работает на любом типе операционных систем, то есть он поддерживается системами типа Windows и Unix.

Существует также еще одна характеристика, которая делает РНР особенно привлекательным для программистов – это его бесплатное распространение! Наиболее новую версию можно в любой момент выгрузить из сайта по адресу http://www.php.net.

система управления базами данных

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

Полученная курсовая работа по теме « Разработка Web-приложения «Учёт оборудования» с использованием PHP и СУБД MySQL» имеет в своем объеме 40 страниц печатного текста, 12 рисунков и 4 приложения.

7 стр., 3407 слов

Использование баз данных и СУБД для обработки информации

... языков определения данных. Обработка данных СУБД должна уметь обрабатывать запросы пользователя на выборку, изменение или удаление соответствующих данных в базе данных или на добавление новых данных в базу данных, т.е. СУБД должна включать в себя компонент процессора языка обработки данных ...

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

Курсовая работа выполнена в соответствии с предложенной руководителем методической литературы.

проверка условий

Проверка условий

Команда if представляет собой разновидность команды выбора, которая вычисляет значение выражения и в зависимости от того, будет ли полученный результат истинным или ложным, выполняет (или не выполняет) блок программного кода. Существует две общих формы команды if:

if (выражение) { блок }

и

if (выражение) { блок }

else { блок }

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

elseif

Команда elseif добавляет в управляющую конструкцию if дополнительный уровень проверки и увеличивает количество условий, на основании которых принимается решение:

if (выражение) { блок }

elseif (выражение) { блок }

В РНР существует альтернативное представление команды elseif — в виде двух отдельных слов else if. Оба варианта приводят к одинаковым результатам, а альтернативное представление поддерживается исключительно для удобства. Команда elseif особенно полезна в тех случаях, когда происходит последовательное уточнение проверяемых условий. Обратите внимание: условие elseif вычисляется лишь в том случае, если все предшествующие условия if и elseif оказались ложными.

Необходимо отметить, что проверку условий можно вкладывать друг в друга, т.е. в одном блоке операторов условия проверять другое и т.д. Также можно проверять несколько условий одновременно, просто связывая условия операторами AND (&&) и OR (||) .

switch

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

Это особенно удобно при проверке нескольких значений, поскольку применение switch делает программу более наглядной и компактной. Общий формат команды switch:

switch (выражение) {

case (условие): блок

case (условие): блок

default: блок

}

Проверяемое условие указывается в круглых скобках после ключевого слова switch. Результат его вычисления последовательно сравнивается с условиями в секциях case. При обнаружении совпадения выполняется блок соответствующей секции. Если совпадение не будет обнаружено, выполняется блок необязательной секции default.

Циклы

Циклы — это операторы управления, тело которых периодически выполняется определенное количество раз. Циклы бывают с предусловием, с постусловием и с изменяемым параметром.

циклы с предусловием

while (условие) :

тело цикла

endwhile;

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

Циклы с постусловием

do

{ тело цикла}

while (условие);

циклы с изменяемым параметром

for :

13 стр., 6352 слов

Импульсный блок питания

... из строя. Недостатки импульсных блоков питания: Сложность конструкции; Высокие требования к качеству компонентов; Работа основной части схемы без гальванической развязки от сети; Невозможность работы без нагрузки. Импульсные блоки питания могут создавать высокочастотные ...

for ( инициализация: условие; приращение) { блок }

foreach :

Существует две разновидности команды foreach , предназначенных для разных типов массивов:

foreach (массив as $элемент) { блок }

foreach (массив as $ключ => $элемент) { блок }

Первая разновидность применяется для численно-индексированных массивов, а вторая для ассоциативных массивов.

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

Рассмотрим пример иллюстрирующий передачу параметра по адресной строке. Пусть в строке адреса написано: http :// localhost / programma 1. php ? name =”Дмитрий” , тогда для того чтобы получить доступ к параметру name записанному в адресной строке необходимо написать следующий код к РНР-приложении:

  • $name = $HTTP_GET_VARS[‘name’];

Теперь если написать код echo ‘Имя = ‘.$ name ; , браузер отобразит строку «Имя = Дмитрий» .

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

Короткий стиль наиболее удобен в работе, для того, чтобы получить доступ к полю, нужно просто создать переменную с таким же именем, как и поле формы. Но этот стиль требует установление параметра register _ globals = on в ini файле php.

$имя_переменной = $ _

$имя_переменной = $

Для корректной работы РНР и MySQL вначале требуется подключиться к серверу MySQL. Это выполняет функция, общий вид которой выглядит следующим образом:

resource mysql _ connect ([ string server [, string username [, string password [, bool new _ link ]]]]);

Затем нужно выбрать базу данных, с которой будет работать приложение:

  • bool mysql_select_db (string database_name [, resource link_identifier]);

mysql_query

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

  • int mysql_num_rows (resource result);
  • array mysql_fetch_array (resource result [, int result_type]);

— Посетитель Интернет-сайта может просматривать только коды HTML страниц, он не видит работы РНР и MySQL. Работу с РНР-приложениями и базами данных MySQL осуществляет сервер, на котором установлен РНР-интерпритатор и СУБД MySQL. После выполнения какого-либо РНР-кода, сервер возвращает посетителю сайта HTML страницу, сам РНР-код посетитель просмотреть не может.

Для того чтобы работать с базами данных MySQL, нужен РНР-интерпритатор. Без него сервер не сможет работать с базами данных MySQL.

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

Циклы с постусловием 1

Рисунок 1. Взаимодействие посетителя сайта с РНР-приложениями и базами данных MySQL.

В будущую базу данных, которая будет называться “ db _06_ ob ” необходимо включить следующие данные об оборудовании и заказщиках.

12 стр., 5825 слов

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

... информационной системы, ожидающей модернизации, будут вам доступны. К примеру, файл SQL скриптов базы данных. В рамках работы над данным проектом нам доступна база данных bossbd.sql, содержащая весь ... построить диаграмму использования в нотации UML. Применительно к нашей работе, учитывая небольшую структуру и достаточно простую иерархию пользователей, варианты использования будут рассматриваться ...

Для того чтобы хранить выше перечисленные данные в базе данных необходимо создать следующие таблицы: “ obor ” – для хранения данных об оборудовании: идентификатор оборудования, идентификатор фирмы производителя, идентификатор типа оборудования, марка и цена; “zak ” – для хранения данных о заказщиках: идентификатор заказщика, Ф.И.О., адрес, телефон и количество приобретаемого оборудования; “firma ” – для хранения данных о фирме производителе: идентификатор фирмы, идентификатор страны и название фирмы; “strana ” – для хранения данных о стране производителе: идентификатор страны и название страны; “tip ” – для хранения данных о типе оборудования: идентификатор типа оборудования и тип оборудования.

Для создания базы данных необходимо на главной странице программы phpMySQL_Admin в поле «создать новую БД» ввести имя базы данных и нажать кнопку «Создать». Рисунок 2 иллюстрирует эту операцию.

Циклы с постусловием 2

Рисунок 2. Создание новой БД.

В открывшемся окне вводим название новой таблицы:

Циклы с постусловием 3

Рисунок 3. Создание таблицы obor .

Потом открывается окно, в котором создаем поля этой таблицы:

Циклы с постусловием 4

Рисунок 4. Создание полей таблицы obor .

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

В Приложении 1 приведен SQL-запрос, при помощи которого можно проделать всю вышеописанную работу по созданию таблиц и полей в них, просто создав базу данных и выполнив в ней этот запрос.

Итак, мы имеем базу данных, с которой пользователь будет выполнять определенные действия посредством приложений РНР. Сначала создадим HTML страницы, с которых будут вызываться приложения РНР.

Главная страница

На этой странице будут помещены приветствие и четыре ссылки на определённом фоне. Именно с нее и будут вызываться приложения РНР. Здесь и далее будут использоваться фон и шрифты из файла style . css .

<h1>Учёт оборудования</h1>

  • <br>

<h3>Добро пожаловать на наш сайт!!! На этом сайте Вы можете просмотреть списки имеющегося в наличии оборудования и заказать его. Доставка по Белгороду БЕСПЛАТНО!!!</h3>

<br>

  • <h3><a href=’looko.php?part=look’>Оборудование</a></h3>
  • <h3><a href=’lookf.php’>Фирмы производители</a></h3>
  • <h3><a href=’lookz.php?part=start’>
  • <br>

<h4>С предложениями по улучшению сайта и с различными вопросами обращайтесь к <a href=’sozd.html ‘>создателю сайта</a>.</h4>

7 стр., 3049 слов

Этикетировочно-маркировочное оборудование

... др.), так и продавца (код товара, артикул и др.). 1. Этикетировочно-маркировочное оборудование Для эффективного управления торговым предприятием, качеством и процессами учета требуется своевременный и ... в небольших количествах; нанесения штрих-кодов на неоштрихованный товар; восстановления поврежденной маркировки. Рисунок 3 - Ручной принтер М0-6020. Техническая характеристика МО-6020: 1. ...

В результате получилась страничка, которая показана на рисунке 5.

Главная страница 1

Рисунок 5. Интерфейс главной страницы сайта.

Страница «О создателе» (

Создадим страницу «О создателе». Пусть она будет называться sozd . html . На ней разместим данные о создателе данного сайта и ссылку для перехода на главную страничку.

<h1>О создателе</h1>

  • <br>

<h3>Создателем данного сайта является студент второго курса группы 140606 факультета Компьютерных Наук и Телекоммуникаций Бредихин Александр Владимирович.</h3>

<br>

  • <h3><a href = «index.html «>Вернуться на главную</a></h3>
  • В результате получится страничка, которая показана на рисунке 6.

Страница о создателе  1

Рисунок 6. Страничка О создателе.

Просмотр записей в БД

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

Процедура вывода в окно браузера записей реализована в файлах lookf . php ( фирмы-изготовители), looko . php ( список оборудования) и lookz . php (заказы посетителей сайта).

Я рассмотрю отображение записей обо всех имеющихся в базе данных об оборудовании. Для того чтобы просмотреть весь список оборудований, посетителю сайта нужно просто щелкнуть по ссылке «Оборудование» и ему будет показан полный список записей об оборудовании, имеющегося в базе данных.

При этом загружается файл looko . php , в который передается по строке адреса параметры part = look .

Сначала подключаемся к СУБД MySQL и выбираем базу данных, с которой будем работать:

  • $connection = @mysql_connect(«localhost», «root») or die(«Could not connect to MySQL server!»);

$bd_name = @mysql_select_db(«db_06_

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

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

$sql = ‘SELECT firma.firma, obor.marka, tip.tip, obor.price, obor.ido FROM obor, firma, tip WHERE firma.idf = obor.idf AND tip.idt = obor.idt LIMIT 0,100’;

$result = mysql_query($sql);

  • Затем строим таблицу и, обрабатывая в цикле результаты выполнения запроса, заполняем ее.

$i=1;

10 стр., 4922 слов

Устройства хранения данных

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

echo ‘<table width = 100% border = 1><tr>

  • <td><p class = «header»>№

<td><p class = «header»>

  • <td><p class = «header»>
  • <td><p class = «header»>
  • <td><p class = «header»>

while ($row=mysql_fetch_array($result))

{

echo ‘<tr>

  • <td><p>’.$i.'</p></td>
  • <td><p>’.$row[0].

‘</p></td>

  • <td><p>’.$row[1].

‘</p></td>

  • <td><p>’.$row[2].

‘</p></td>

  • <td><p>’.$row[3].

‘</p></td>

  • <td><p><a href = «add.php?part=start&ido=’.$row[4].

‘»>

$i++;

};

echo ‘</table>’;

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

Просмотр записей в бд 1

Рисунок 7. Таблица всего имеющегося оборудования.