Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Соединение с базой данных



После того как соединение установлено, необходимо выбрать базу данных при помощи функции mysql_select_db(), которая эквивалентна вызову каманды USE в консольном клиенте mysql. Функция имеет следующий синтаксис:

bool mysql_select_db ($datebase_name [, $link_identifier])

Функция принимает в качестве аргументов название выбираемой базы данных $datebase_name и дескриптор соединения$link_identifier, который ранее был возвращен функцией mysql_connect(). Функция возвращает true при успешном выполнении операции и false — в противном случае.

Операция установки соединения с СУБД MySQL будет использоваться очень часто, поэтому выделим ее в отдельный РНР-файлconfig.php.

<?php
//Aдрес сервера MySQL
$dblocation ="localhost";
//Имя базы данных на хостинге или локальной машине
$dbname ="test";
//Имя пользователя базы данных
$dbuser ="root";
//его пароль
$dbpasswd ="";
//устанавливаем соединение с базой данных
$dbcnx =@ mysql_connect ($dblocation, $dbuser, $dbpasswd);
if (! $dbcnx) {
exit ("<p>В настоящий момент сервер базы данных не доступен, поэтому корректное отбражение страницы невозможно</p>");
}
//выбираем базу данных
if (!@ mysql_select_db ($dbname, $dbcnx))
{
exit ("<p>В настоящий момент база данных не доступна, поэтому корректное отбражение страницы невозможно </p>");
}
?>

Запросы

Сами запросы POST и GET (далее просто запросы) давно проросли корнями во все Интернет ресурсы. Если вдруг когда нибудь и появится альтернатива данным технологиям, то наверное это будет не скоро, да и, наверное, не нужно. Потому что наши запросы вполне полно выполняют задачу обмена данными между Интернет страницами.

Давайте рассмотри сначала запрос типа GET. Создадим файл index.php со стандартным html кодом, а так же разместим на нем форму, пусть это будет форма заказа товара.

<html><head></head><body> <form action="index.php" method="GET"> <input type="text" name="orderName" /> <input type="text" name="count" /> <input type="submit" value="Заказать" /> </form> </body></html>

Здесь обратим внимание на тег form. Он имеет два параметра action и method. Первый отвечает за адрес страницы, на которую мы будем передавать наши данные, второй — за метод, которым эти данные будут передаваться. Внутри данного тега описываются набор наших данных, которые мы хотим передавать. Обязательно данным присваиваются имена (параметр name). Так же обязателен input типа submit, который является кнопкой, по нажатию на которую происходит отпарвка данных.

Давайте сохраним наш файл и откроем его в браузере.
Путь нашей страницы в браузере «…/index.php». На самой странице мы видим два поля для ввода и кнопку. Давайте вобъем в наши поля что-нибудь и нажмем на кнопку «Заказать». Наша страница обновилась. Давайте посмотрим на ее адрес: «…/index.php?orderName=Test&count=12″. (я вбил в первое поле слово ‘Test’ во второе ’12′). Как мы видим адрес страницы немного поменялся. Дело в том что передача параметров GET запросом осуществляется путем их приписывания в строку адреса страницы. Параметры отделяются от основного адреса симвлом ‘?’, а разные параметры символом ‘&’. Структура параметров следующая: название_параметра=значение. Название параметра будет совпадать со значением атрибута name в поле input.
Давайте немного подредактируем код страницы:

<html><head></head><body> <form action="index.php" method="GET"> <input type="text" name="orderName" value=<?=$_GET["orderName"]?> > <input type="text" name="count" value=<?=$_GET["count"]?> > <input type="submit" value="Заказать" /> </form> </body></html>

Теперь нажмем на кнопку «Заказать» еще раз. Как мы видим страница обновилась, однако наши поля остались заполнены. Это произошло благодаря тому, что мы указали значение по умолчанию для наших полей. Причем эти значения — полученный параметр GET. Как мы видим в PHP коде GET параметры являются массивом со строковым индексом равным имени параметра. Если сейчас поиграться с адресом сайта и в нем поменять значения параметров и нажать кнопку «Enter», то мы опять заметим картину с обновлением страницы и заполнением нашей формы.

Очевидно что пересылать секретные или служебные данные в GET запросе неправильно (и не безопасно). Его лучше использовать для передачи, например, id новости, которую стоит взять из базы или имени страницы, которую стоит отобразить.

Другое дело POST запрос. Работает он аналогично, однако не сохраняет параметры в строке адреса. Изменим нашу форму:

<html><head></head><body> <form action="index.php" method=" POST "> <input type="text" name="orderName" value=<?= $_POST["orderName"]?> > <input type="text" name="count" value=<?= $_POST["count"]?> > <input type="submit" value="Заказать" /> </form> </body></html>

Как видно изменилось не многое, Однако! Откроем нашу страницу, вобъем что-нибудь в поля и нажмем кнопку «Заказать». Все сработало аналогично, однако (однако), как мы видим в строке запросов красуется адрес «…/index.php» без всякого рода параметров. Таким образом мы как бы «скрыли» наши данные от посторонних глаз. Конечно понятие скрыли, достаточно условное, так как эти данные все равно можно перехватить, но это уже другая история. Давайте допишем в наш адрес параметры «…/index.php?orderName=Trololo&count=100″ и нажмем «Enter». Как мы видим страница загрузилась, однако даже не смотря на передачу параметров, поля оказались пустые. Это говорит о том что несмотря на большую схожесть, данные виды запросов никак не пересекаются между собой и если есть необходимость стоит писать обработчик для каждого типа запроса отдельно.





Дата публикования: 2015-03-29; Прочитано: 230 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...