Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая MySQL и PHP.doc
Скачиваний:
21
Добавлен:
16.12.2018
Размер:
896 Кб
Скачать

Пример 1

<html> <head> <title>Добавление записи в таблицу</title> </head> <body> <?php $db = "sample"; $link = mysql_pconnect (); if ( !$link )    die ("Невозможно подключение к MySQL"); mysql_select_db ( $db ) or die ("Невозможно открыть $db"); $query = "INSERT INTO books            VALUES ('966-7393-80-1', 'Аллен Вайк',            'PHP. Справочник', '213', '4')"; mysql_query ( $query ); mysql_close ( $link ); ?> </body> </html>

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

В примере 2.1 приведена HTML-форма для добавления новых книг в базу данных.

Пример 2.1

<html>

<head>

<title>HTML-форма добавления новых книг</title>

</head>

<body>

<form aсtion="insert_book.php" method="post">

<table>

<tr><td>ISBN<td><input name=isbn maxlength=13 size=13>

<tr><td>Автор<td><input name=author maxlength=30 size=30>

<tr><td>Название<td><input name=title maxlength=60 size=30>

<tr><td>Цена<td><input name=price maxlength=7 size=7>

<tr><td>Количество<td><input name=quantity maxlength=3 size=3>

<tr>td colspan=2><input type=submit value="Ввод">

</table>

</form>

</body>

</html>

Результаты заполнения этой формы передаются в insert_book.php.

Пример 2.2

<html>

<head>

<title>Программа добавления новых книг (файл insert_book.php)</title>

</head>

<body>

<?php

if (!$isbn || !$author || !$title || !$price || !$quantity)

die ("Не все данные введены.<br>

Пожалуйста, вернитесь назад и закончите ввод");

$isbn = trim ( $isbn );

$author = trim ( $author );

$title = trim ( $title ) ;

$isbn = addslashes ( $isbn );

$author = addslashes ( $author );

$title = addslashes ( $title ) ;

$db = "sample";

$link = mysql_pconnect();

if ( !$link ) die ("Невозможно подключение к MySQL");

mysql_select_db ( $db ) or die ("Невозможно открыть $db");

$query = "INSERT INTO books VALUES ('"

.$isbn."', '".$author."', '".$title."', '"

.$price."', '".$quantity."')";

$result = mysql_query ( $query );

if ($result) echo "Книга добавлена в базу данных.";

mysql_close ( $link );

?>

</body>

</html>

В примере 2.2 введенные строковые данные обработаны функцией addslashes(). Эта функция добавляет обратные слеши перед одинарными кавычками ('), двойными кавычками ("), обратным слешем (\) и null-байтом. Дело в том, что по требованиям синтаксиса запросов баз данных такие символы должны заключаться в кавычки.

Для определения количества записей в результате запроса используется функция mysql_num_rows().

Все записи результата запроса можно просмотреть в цикле. Перед этим с помощью функции mysql_fetch_array() для каждой записи получают ассоциативный массив.

В примере 3.1 приведена HTML-форма для поиска определенных книг в базе данных.

Пример 3.1

<html>

<head>

<title>HTML-форма поиска книг</title>

</head>

<body>

<form aсtion="search_book.php" method="post">

Ищем по:<br>

<select name="searchtype" size=3>

<option value="author" selected>Автору

<option value="title">Названию

<option value="isbn">ISBN

</select> <br>

Что ищем:<br> <input name="searchterm"> <br>

<input type=submit value="Поиск">

</form>

</body>

</html>

Результаты заполнения этой формы передаются в search_book.php.