- •Рецензент
- •Содержание
- •1. Цель работы
- •2. Краткие теоретические сведения
- •2.1 Создание базы данных
- •2.2 Разработка скрипта обработки данных формы и внесения записей в таблицу базы данных
- •2.3 Разработка скрипта – запроса к базе данных
- •3. Порядок выполнения работы
- •4. Задание на лабораторную работу
- •5. Содержание отчета
- •6. Контрольные вопросы
- •Библиографический список
2.2 Разработка скрипта обработки данных формы и внесения записей в таблицу базы данных
Рассмотрим механизм добавления записей в таблицу базы данных на примере. Ниже представлен исходный код php-скрипта предназначенного для добавления информации в базу данных каталог статей журнала.
1
2
3
4
5
6
7
8
9 |
<html> <head> <title></title> </head> <body> <?php
$ptitle = $_POST['title']; $psection = $_POST['section']; $pmag_y = $_POST['mag_y']; $pmag_n = $_POST['mag_n'];
trim($ptitle); trim($psection);
{ echo("Проверьте правильность заполнения полей!"); exit; }
$db = mysql_connect("localhost","root") or die ("Невозможно соединится с MySQL!");
mysql_select_db("TSC", $db) or die ("Невозможно выбрать таблицу данных!");
$query = "INSERT INTO magazine VALUES (NULL, '".$pauthor."', '".$ptitle."', '".$psection."', '".$pmag_y."', '".$pmag_n."')";
$result = mysql_query($query, $db);
echo(mysql_affected_rows()." запись(ей) добавлена(о) в базу."); else echo("Невозможно выполнить запрос!");
mysql_close($db); ?>
</body> </html> |
1 – Запись содержимого полей ввода формы, заполненной пользователем, в соответствующие переменные;
2 – Удаление лишних пробелов в начале и в конце текстовых строк;
3 – Проверка наличия переданных данных;
4 – С помощью функции mysql_connect осуществляем соединение с сервером баз данных MySQL. В качестве имени хоста передаем localhost, а в качестве имени пользователя – root. Это стандартный метод при отладке работы web-сайтов с поддержкой баз данных, поэтому следует все параметры оставить без изменения.
5 – Если подключение к серверу базы данных прошло успешно, далее следует выбрать нужную базу данных. Делается это с помощью функции mysql_select_db. В качестве параметров функция принимает имя таблицы данных и переменную-идентификатор связи с базой данных.
6 – Создается переменная в которой будет содержаться строковое значение – sql запрос к базе данных на добавление новой записи в таблицу данных.
7 – С помощью функции mysql_query выполняем sql-запрос.
8 – Проверяем успешность выполнения запроса.
9 – Закрываем соединение с базой данных с помощью функции mysql_close.
2.3 Разработка скрипта – запроса к базе данных
Создадим скрипт, который позволит извлекать из базы данных названия статей, заданной рубрики.
1
2
3
4
5
6 |
<html> <head> <title></title> </head> <body > <?php
$psection = $_POST['section']; trim($psection);
$db = mysql_connect("localhost","root") or die ("Невозможно соединится с MySQL!");
mysql_select_db("TSC", $db) or die ("Невозможно выбрать базу данных!");
$query = "SELECT magazine.author, magazine.title, magazine.mag_y, magazine.mag_n FROM magazine WHERE (magazine.section = '".$psection."');";
$result = mysql_query($query, $db);
if (!$result)
while ($rerow = mysql_fetch_row($result)) { echo($rerow[0]. "<br>". $rerow[1]. "<br>". $rerow[3]. "/". $rerow[2]. <br>"); }
mysql_free_result($result);
mysql_close($db); ?> </body> </html |
1 – Получение значения параметра, по которому будет проведена выборка из базы данных;
2, 3 – Соединение с сервером базы данных и выбор базы;
4 – SQL-запрос к базе данных;
5 – Обработка результата запроса.
6 – Освобождение памяти, занимаемой результатом запроса.
После выполнения функции mysql_query возвращается идентификатор результата в случае успешного выполнения и false в случае неудачи. Этот идентификатор обязательно нужно сохранить, для того чтобы в дальнейшем была возможность обработать результат выполнения запроса. Сам результат всегда представляется как набор строк (если запрос выполнен успешно и есть записи удовлетворяющие требованиям запроса). Каждая строчка результата запроса может быть представлена как нумерованный массив с помощью функции mysql_fetch_row. В дальнейшем, обращение к полям может быть осуществлено с помощью индекса. Следует помнить, что цикл, в котором происходит перебор всех записей результата запроса, не будет выполнен ни разу, если в результате запроса не содержится ни одной строки. После обработки строк запроса рекомендуется освободить отведенную под него память с помощью функции mysql_free_result.

$pauthor
= $_POST['author'];
trim($pauthor);
if
(!$pauthor || !$ptitle || !$psection || !$pmag_y || !$pmag_n)
if
($result)
echo("Невозможно
выполнить запрос!");