Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
web-пр_МВ_ДЗ_ЛР_1.doc
Скачиваний:
18
Добавлен:
13.11.2019
Размер:
5.4 Mб
Скачать

Отображение списка полей в html-форму

<?php

$conn=mysql_connect(localhost,'root','');

mysql_select_db("Coffee");

$sql="SELECT * FROM info_coffee";

$result=mysql_query($sql);

echo "<table border=1>";

echo "<tr> <td> Название</td> <td> Фирма </td> <td> Цена</td> </tr>";

for ($i=1; $i<=mysql_num_rows($result);$i++)

{$row=mysql_fetch_object($result);

print "<tr><td> $row->name </td> <td> $row->firma </td> <td> $row->price грн. </td> </tr>";

}

?></table></form>

Запись данных в базу данных

Создадим форму для наполнения БД:

<form action=insert.php method=post>

введите название <input type=text name=name_c> <br>

введите цену <input type=text name=price_c> <br>

выберите фирму <select name=firma_c>

<option> nescafe

<option> jacobs

<option> tchibo

</select>

<br><input type=submit name=ok value=insert_c>

</form>

Теперь нужно сделать самое главное – отправить данные из этой формы в нашу базу данных. Как вы уже знаете, для того чтобы записать данные в таблицу, используется команда INSERT языка SQL. Например:

mysql> INSERT INTO info_coffee

SET name='Черная карта арабика';

Возникает вопрос, как можно воспользоваться такой командой (или любой другой командой SQL) в PHP скрипте. Для этого существует функция mysql_query().

Синтаксис mysql_query:

ресурс mysql_query (строка query [, ресурс link_identifier])

mysql_query() посылает SQL-запрос активной базе данных MySQL сервера, который определяется с помощью указателя link_identifier (это ссылка на соединение с сервером MySQL). Если параметр link_identifier опущен, используется последнее открытое соединение. Если открытые соединения отсутствуют, функция пытается соединиться с СУБД, аналогично функции mysql_connect() без параметров. Результат запроса буферизируется.

Insert.php

<?php

$name=$_REQUEST["name_c"];

$price=$_REQUEST["price_c"];

$firma=$_REQUEST["firma_c"];

$db=mysql_connect(localhost,'root','');

mysql_select_db("Coffee");

if ($but=insert_c)

{$sql1="INSERT INTO name_coffee VALUES('','$name','$price','$firma')";

mysql_query($sql1);

}

print "Кофе $name $firma добавлено";

?>

poisk.php

$a=$_REQUEST["price_c"];

{print " кофе по цене < $a грн: <br>"; }

$conn=mysql_connect(localhost,'root','');

mysql_select_db("Coffee");

$sql="SELECT * FROM info_coffee where price=".$a;

$result=mysql_query($sql);

for ($i=1; $i<=mysql_num_rows($result);$i++)

{$row=mysql_fetch_object($result);

print "Кофе $row->name $row->firma стоит $row->price грн. <br>";

}

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

<form action=poisk.php method=post>

введите цену <input type=text name=price_c> <br>

<input type=submit name=ok value=search>

</form>

Примечание. БД и таблицы хранятся на сервере по следующему пути:

Webserver\usr\local\mysql5\data\coffee

Задание к работе:

  • Ознакомиться с теоретическим материалом.

  • Создать БД согласно варианту (предметную область взять из работы по разработке каталога)

  • Разработать структуру таблиц

  • Создать скрипт на php для просмотра записей таблиц, поиска по критерию, добавления информации, удаления записей и изменения информации

  • Оформить отчет согласно требованиям.

Отчет должен содержать:

  • Название и цель работы.

  • Ход работы с детальным описанием выполненных действий с рисунками, листингом кода.

  • Экранные формы браузера с загруженными страницами.

  • Выводы о проделанной работе.

Вопросы для подготовки к защите работы:

  • Каким образом взаимодействует PHP с СУБД MySql?

  • Как происходит установка соединения с базой данных?

  • Какие функции используются для отправки запросов и обработки ответов?

  • Каким образом выполняется обработка ошибок при подключении к БД?