Объектно-ориентированный язык сценариев php, страница 23

Сформированный SQL запрос в виде строки записывается в переменную $query. Далее передаем эту строку, как первый аргумент функции mysql_query(). Вторым параметром идет указатель на соединение ($p), полученный от функции mysql_connect(). Таблица создана.

Примечание. Нетрудно заметить, что запрос CREATE TABLE можно поместить непосредственно в функцию mysql_query в качестве первого параметра. Мы же занесли его в отдельную переменную $query для упрощения отладки первых программ.

Теперь заполним таблицу данными. В этом нет ничего сложного, достаточно корректно составить SQL запрос.

 

Пример 11.4 Добавление данных в таблицу (файл primer11_4.php)

 

<?php

$p = mysql_connect("имя хоста", "имя пользователя","пароль");

mysql_select_db("имя базы данных",$p) or die ("Не могу открыть");

$query = "INSERT INTO telephones(surname ,email ,tel)

values('Kolin', 'user2000@mail.ru', '580-46-82')" ;

mysql_query($query, $p) or die("Не удалось выполнить запрос");

print "Данные добавлены";

?>

 

Обратите внимание на то, что мы не указываем значение поля id. Это поле изменяется автоматически. В нашем примере мы добавили запись, содержащую информацию о человеке по фамилии Колин. При каждом выполнении программы из примера 11.4 в таблицу будет добавляться новая запись, содержащая одни и те же данные, но с новым идентификатором id (он автоматически увеличивается на 1).

Заметим, что в примере использовались как одинарные, так и двойные кавычки. Используйте их на свое усмотрение, только если Вы открыли двойную кавычку, то и закрыть Вы должны двойной. Внутри одних кавычек нужно использовать другие.

Заполнять таблицы программным способом удобно при первоначальном их создании. Для пополнения данных конечно удобнее использовать формую. В примере 11.5 приведена программа, которая добавляет в таблицу данные, введенные через форму.

 

Пример 11.5 Форма для ввода информации (файл add_user.html)

 

<html>

<body>

<form action="add.php" method="POST">

Surname     <input type="text" name="surname">

Email:        <input type="text" name="email">

Tel:            <input type="text" name="tel">

<input type="submit" value="ADD">

</form>

<body>

<html>

 

В этом файле все довольно просто: создаем три текстовых поля для ввода информации и кнопку для отсылки этой информации файлу add.php, который будет ее заносить в базу данных.

 

Пример 11.6 Обработчик формы (файл add.php)

 

<?php

 

function add_data($surname, $email, $tel)

{

$p=mysql_connect("имя хоста", "имя пользователя","пароль"or die("Не могу подключиться к серверу базы данных");

mysql_select_db("имя базы данны",$p) or die("NO BASE!");

$query = "INSERT INTO telephones(surname , email , tel)    

                                                                 values('$surname','$email','$tel')";

mysql_query($query,$p) or die("Could't execute");

}   

 

if (($_POST['surname'] !="") and ($_POST['email'] !="") and ($_POST['tel'] != ""))

{

add_data($_POST['surname'], $_POST['email'], $_POST['tel']);

print "Added data: Surname: $_POST['surname'], Email: $_POST['email'], TEl: $_POST['tel']<br>";

}

      else

{

print "Check data<br>";

}

?>

<html>

<body>

<a href="add_user.html">Add another</a>

</body>

</html>

 

Функция add_data() использована для добавления данных в базу. Внутри функции сначала мы подключаемся к нашей базе new. Если вы помните, в этой базе уже есть одна таблица (telephones). Функции add_data() необходимо передать в качестве аргументов три параметра: фамилию($surname), электронный адрес($email) и телефон($tel). Эти параметры PHP программа получит от нашей формы сразу после того, как будет нажата кнопка add.