49508 (597449), страница 5
Текст из файла (страница 5)
int mysql_connect(string hostname, string username, string password);
Параметры функции:
Hostname – имя хоста, на котором находится база данных.
Username – имя пользователя.
Password – пароль пользователя.
Функция возвращает параметр типа int, который больше 0, если соединение прошло успешно, и равен 0 в противном случае.
2. Выбрать базу данных для работы.
int mysql_select_db(string database_name, int link_identifier);
Параметры функции:
Database_name – имя базы данных.
link_identifier – ID соединения, которое получено в функции mysql_connect. (параметр необязательный, если он не указывается, то используется ID от последнего вызова mysql_connect)
Функция возвращает значение true или false
3. Функция выполняет запрос к базе данных.
int mysql_query(string query, int link_identifier);
Параметры функции:
Query – строка, содержащая запрос
link_identifier – см. предыдущую функцию.
Функция возвращает ID результата или 0, если произошла ошибка.
4. Функция закрывает соединение с MySQL.
int mysql_close(int link_identifier);
Параметры функции:
link_identifier – см. выше.
Функция возвращает значение true или false
Теперь файл email.php будет иметь следующий вид:
Листинг email_1.php
/* Этот скрипт получает переменные из request.html */
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "myusername";
$password = "mypassword";
$dbName = "products";
/* Таблица MySQL, в которой хранятся данные */
$userstable = "clients";
/* email администратора */
$adminaddress = "administration@me.com";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка – вывести ее */
mysql_select_db($dbName) or die(mysql_error());
echo "
echo "Привет, ".$_POST['name'];
echo "
";
echo "Спасибо за ваш интерес.
";
echo "Вас интересуют ".$_POST['preference'].". Информацию о них мы пошлем вам на email: ".$_POST['email'];
echo "";
/* Отправляем email-ы */
$subj = "Запрос на информацию";
$text = "Уважаемый ".$_POST['name']."!
Спасибо за ваш интерес!
Вас интересуют ".$_POST['preference']."
Мы их распространяем бесплатно.
Обратитесь в ближайший филиал нашей компании и получите ящик этого продукта.";
mail($_POST['email'], $subj, $text);
$subj="Поступил запрос на информацию";
$text = $_POST['name']." интересовали ".$_POST['preference']." email-адрес: ".$_POST['email'];
mail($adminaddress, $subj, $text);
/* составить запрос для вставки информации о клиенте в таблицу */
$query = "INSERT INTO $userstable VALUES('$name','$email', '$preference')";
/* Выполнить запрос. Если произойдет ошибка – вывести ее. */
mysql_query($query) or die(mysql_error());
echo "Информация о вас занесена в базу данных.";
/* Закрыть соединение */
mysql_close();
?>
Вот так можно работать с базой данных в PHP. Теперь кроме письменных уведомлений, информация о клиенте и его интересах будет заноситься в таблицу MySQL.
3.2.3. Получение (извлечение) данных из базы данных MySQL
После занесения данных, нас иногда будет интересовать вопрос: так кого же из наших клиентов интересует товар “Яблоки”
Напишем скрипт apple.php.
Листинг apple.php
/* Скрипт показывает клиентов, которые яблоки любят больше чем апельсины */
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "myusername";
$password = "mypassword";
$dbName = "products";
/* Таблица MySQL, в которой хранятся данные */
$userstable = "clients";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка – вывести ее */
mysql_select_db($dbName) or die(mysql_error());
/* составить запрос, который выберет всех клиентов – яблочников */
$query = "SELECT * FROM $userstable WHERE choise = 'Яблоки'";
/* Выполнить запрос. Если произойдет ошибка – вывести ее. */
$res = mysql_query($query) or die(mysql_error());
/* Как много нашлось таких */
$number = mysql_num_rows($res);
/* Напечатать всех в красивом виде*/
If ($number == 0) {
echo "
} else {
echo "
";
/* Получать по одной строке из таблицы в массив $row, пока строки не кончатся */
while ($row=mysql_fetch_array($res)) {
echo "Клиент ".$row['name']." любит Яблоки.
";
echo "Его Email: ".$row['email'];
echo "
";
}
echo "";
}
?>
Вот и все, продукт практически готов.