лей и паролей каждая строка в таблице будет содержать пару имя пользователя/
пароль, при этом имя пользователя будет находиться в одном столбце, а его па —
роль — в другом столбце одной и той же строки. Для создания такой таблицы сначала необходимо указать СУБД, какую базу данных использовать, а затем вы- полнить следующий оператор SQL:
USE hwdtt;
CREATE TABLE webSiteUsers
(username VARCHAR(20) NOT NULL, password VARCHAR(20) NOT NULL) ;
Синтаксис оператора CREATE TABLE имеет следующий вид:
CREATE TABLE
(столбца> [] ,
последнего столбца> столбца> [
последнего столбца>]) Ц
Очевидно, что таблица должна содержать данные, которые в нее можно запи —
сать с помощью SQL-оператора INSERT, например, для вставки имен пользовате — лей и паролей в таблицу webSiteUsers можно выполнить следующие операторы INSERT:
INSERT INTO webSiteUsers (username, password)
VALUES («Konrad», «abcl25″);
INSERT INTO webSiteUsers (username, password)
VALUES («Gracie», «157WXY3″);
Синтаксис оператора INSERT ВЫГЛЯДИТ следующим образом:
INSERT INTO (столбец2, …, столбецЫ>)
VALUES{значение1,значение2,…fзначение!*);
Далее, для использования таблицы базы данных из примера этого совета СУБД можно передать запрос в виде SQL-оператора SELECT. Например, для счи — тывания из таблицы имен пользователей и паролей можно воспользоваться сле — дующим оператором:
SELECT username, password FROM webSiteUsers;
Для проверки ввода посетителем верного имени пользователя можно восполь — зоваться конструкцией WHERE, который указывает СУБД вернуть только те стро —
ки, в которых имя пользователя и пароль соответствуют данным, введенным по — сетителем в элементы формы входа на сайт. Например, если посетитель ввел в поле имени пользователя слово Konrad и слово wrongPass в поле ввода пароля, запрос будет выглядеть следующим образом:
SELECT COUNT(*) FROM webSiteUsers
WHERE username=»Konrad» AND password^»wrongPass»
Глава 10. РНР4 53 1
Если приведенный запрос возвращает значение «1″ , введенная посетителем пара имя пользователя/пароль является верной. В противном случае, если вве — денная посетителем пара в таблице отсутствует (как в приведенном случае), зап —
рос возвращает значение «0м, которое означает, что в таблице не содержится
данных для пользователя с указанным именем и паролем.
В следующем совете будет показано, каким образом данные заносятся в SQL — таблицу, и каким образом в PHP-сценариях выполняются запросы на считывание SQL-таблиц.
Вывод на Web-странице результатов запроса в базу данных SQL в HTML-таблице
Для считывания данных из базы данных и вывода их на Web-странице РНР- сценарий должен выполнить три операции. Во-первых, сценарий должен устано —
вить соединение с СУБД с помощью вызова встроенной функции соединения с
базой данных (например, функции mysqi_connect(), которая позволяет устано — вить соединение с СУБД MySQL). Во-вторых, сценарий должен по установлен — ному соединению с СУБД отправить запрос с помощью встроенной функции от —
правки SQL-запроса (например, функции mysqi query(), которая позволяет
PHP-сценарию передавать на выполнение СУБД операторы SQL). В-третьих, после помещения СУБД результатов запроса в выходной буфер Web-сервера сце — нарий должен считать данные из буфера и вывести их на Web-странице. Например, при работе с MySQL сценарий может использовать встроенную функцию