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

Пример 3.2

<html>

<head>

<title>Программа поиска книг (файл search_book.php)</title>

</head>

<body>

<?php

trim ( $searchterm );

if (!$searchterm)

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

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

$searchterm = addslashes ($searchterm);

$link = mysql_pconnect ();

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

$db = "sample";

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

$query = "SELECT * FROM books WHERE "

.$searchtype." like '%".$searchterm."%'";

$result = mysql_query ( $query );

$n = mysql_num_rows ( $result );

for ( $i=0; $i<$n; $i++ )

{

$row = mysql_fetch_array($result);

echo "<p><b>".($i+1).". $row[title]</b><br>";

echo "Автор: $row[author]<br>";

echo "ISBN: $row[ISBN]<br>";

echo "Цена: $row[price]<br>";

echo "Количество: $row[quantity]</p>";

}

if ( $n == 0 ) echo "Ничего не можем предложить. Извините";

mysql_close ( $link );

?>

</body>

</html>

Итак, как работает архитектура Web-баз данных:

  1. Web-браузер пользователя выдает HTTP-запрос определенной Web-страницы. Например, пользователь, используя HTML-форму, ищет все книги о PHP. Страница обработки формы называется search_book.php.

  2. Web-сервер принимает запрос на search_book.php, извлекает этот файл и передает на обработку механизму PHP.

  3. PHP выполняет соединение с MySQL-сервером и отправляет запрос.

  4. Сервер принимает запрос к базе данных, обрабатывает его и отправляет результат (список книг) обратно механизму PHP.

  5. Механизм PHP завершает выполнение сценария, форматирует результат запроса в HTML. После этого результат в виде HTML возвращается Web-серверу.

  6. Web-сервер пересылает HTML в браузер, и пользователь имеет возможность просмотреть запрошенный список книг.

mysql_connect - Открывает соединение с сервером MySQL

Описание

resource mysql_connect ( [string server [, string username [, string password [, bool new_link [, int client_flags]]]]] )

Возвращает указатель на соединение с MySQL в случае успешного выполнения, или FALSE при неудаче.

mysql_connect() устанавливает соединение с сервером MySQL. Следующие значения по умолчанию установлены для отсутствующих параметров: server = 'localhost:3306', username = имя пользователя владельца процесса сервера и password = пустой пароль.

Параметр server может также включать номер порта, к примеру "hostname:port" или путь к сокету, к примеру ":/path/to/socket" для локального сервера.

Замечание: При указании параметру server значения "localhost" или "localhost:port" клиентская библиотека MySQL будет пытаться соединиться с локальным сокетом. Если вы всё же хотите использовать TCP/IP, используйте адрес "127.0.0.1" вместо "localhost". Если клиентская библиотека пытается подключиться не к тому локальному сокету, это можно исправить через указание директивы mysql.default_host в конфигурации PHP, после чего можно оставлять параметр server пустым.

Подавить вывод ошибок можно добавив @ в начало названия функции (@mysql_connect())

Соединение с сервером будет закрыто при завершении исполнения скрипта, если до этого оно не будет закрыто с помощью функции mysql_close().