Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Написание сценариев PHP с использованием PEAR::DB



PEAR (PHP Extension and Application Repository) — это библиотека классов PHP с открытым исходным кодом.

Установка:

1) Распакуйте архив PEAR.tgz в какую-нибудь директорию.

2) Для дальнейшей работы из понадобится только PEAR.php.

3) Создайте в структуре вашего сайта директорию pear/ и скопируйте PEAR.php в нее.

4) Распакуйте пакет DB.

5) Скопируйте файл DB.php и поддиректорию DB/ в директорию pear/ вашего сайта.

6) Откройте файл DB.php в редакторе, найдите строчку require_once 'PEAR.php'; и сотрите ее. Сохраните файл.

7) Откройте файл mysql.php в подкатегории DB категории PEAR, найдите строчку require_once 'DB/common.php'; и замените наrequire_once 'common.php';.Сохраните файл.

8) В корневом каталоге создайте файл testdb.php. Структура должна выглядеть примерно так:

 

9) Добавьте в файл testdb.php следущий код:

<? php

header(" Content-type: text/html; charset=utf-8" );

 

require_once 'PEAR/PEAR.php';

require_once 'PEAR/DB.php';

 

$myDB =& DB:: factory('mysql'); // подсоединяемся к mysql

$myDB-> connect(DB:: parseDSN('mysql: //root: 12345@localhost/testsmarty')); //подсоединяемся к базе

 

$myDB-> setFetchMode(DB_FETCHMODE_ASSOC);

// устанавливаем кодировку

$myDB-> query('set names utf8');

$q = 'SELECT * FROM pages'; // какой-нибудь запрос

$result = $myDB-> query($q);

//проверяем корректность выполнения запроса

if(! DB:: isError($result) & & $result-> numRows() > 0) {

// получаем ассоциативный массив значений

while($row = $result -> fetchRow()) {

print('name = '.$row['name']);

}

}

? >

 

Практическая часть

Порядок выполнения работы

1) Сделать скрипт создания БД, подключения к ней и создания таблицы.

2) Научиться применять типы и функции MySQL и PHP.

3) Настроить PearDB. Подключиться к своей БД и вывести данные различных запросов.

 

3. Контрольные вопросы

1) Приведите особенности установки библиотеки PearDB?

2) Перечислите функции PHP для работы с MySQL?

 

 

Лабораторная работа 19

СОЗДАНИЕ WEB-СТРАНИЧКИ. ИНТЕРАКТИВНОЕ управление ДАННЫМИ.

 

Цель работы: формирование умений и навыков создания web-страниц с использованием MySQL.

 

Краткие теоретические сведения

Работа с формами в php

Для получения данных, вводимых пользователем, в html используется тег < form> < /form>.

Атрибут action тега form определяет, по какому адресу передаются данные с формы. Атрибут method определяет каким способом передаются данные: в глобальном массиве POST или GET. Обратиться к содержимому обоих массивов можно с помощью глобального массива REQUEST.

 

Сохранение данных

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

Пример:

Создаем таблицу с названием " test_table" и с шестью полями с названиями:

" name" - здесь будут храниться имена пользователей;

" message" - здесь будут храниться сообщения;

" data" - здесь будет храниться дата отправки сообщения;

" id" - идентификационный номер записи (строки), ключевое поле.

 

Создаем файл index.html, содержащий форму для добавления данных:

<! DOCTYPE html PUBLIC " -//W3C//DTD XHTML 1.0 Transitional//EN" " http: //www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >

< html xmlns=" http: //www.w3.org/1999/xhtml" >

< head>

< meta http-equiv=" Content-Type" content=" text/html; charset=utf-8" />

< title> Форма с сохранением в MySQL< /title>

< /head>

< body>

< h3> Пример формы с сохранением данных в MySQL< /h3>

< form action=" save_form.php" method=" post" name=" test_form" >

< table border=" 1" cellpadding=" 0" cellspacing=" 0" >

< tr>

< td colspan=" 2" align=" center" > < strong> Отправка запроса< /strong> < /td>

< /tr>

< tr>

< td width=" 150" > Имя: < /td>

< td> < input type=" text" name=" test_name" maxlength=" 30" /> < /td>

< /tr>

< tr>

< td width=" 150" > Сообщение: < /td>

< td> < textarea name=" test_mess" > < /textarea> < /td>

< /tr>

< tr>

< td colspan=" 2" align=" center" >

< input type=" submit" value=" Отправить запрос" />

< input type=" reset" value=" Очистить" />

< /td>

< /tr>

< /table>

< /form>

< /body>

< /html>

 

Создаем обработчик формы save_form.php с сохранением полученных данных в MySQL:

<?

/* Соединяемся с базой данных */

$hostname = " localhost"; // название/путь сервера, с MySQL

$username = " root"; // имя пользователя

$password = " "; // пароль пользователя

$dbName = " test_base"; // название базы данных

 

/* Таблица MySQL, в которой будут храниться данные */

$table = " test_table";

 

/* Создаем соединение */

mysql_connect($hostname, $username, $password) or die (" Не возможно создать соединение" );

 

/* Выбираем базу данных. Если произойдет ошибка - вывести ее */

mysql_select_db($dbName) or die (mysql_error());

 

/* Определяем текущую дату */

$cdate = date(" Y-m-d" );

 

/* Составляем запрос для вставки информации в таблицу

name...date - название конкретных полей в базе;

в $_POST[" test_name" ]... $_POST[" test_mess" ] - в этих переменных содержатся данные, полученные из формы */

$query = " INSERT INTO $table(name, email, theme, message, data) values('".$_POST['test_name']." ', '".$_POST[" test_mess" ]." ', '$cdate')";

 

/* Выполняем запрос. Если произойдет ошибка - вывести ее. */

mysql_query($query) or die(mysql_error());

 

/* Закрываем соединение */

mysql_close();

 

/* В случае успешного сохранения выводим сообщение и ссылку возврата */

? >

 

< div style=" text-align: center; margin-top: 10px; " >

< font color=" green" > Данные успешно сохранены! < /font>

 

< a href=" index.html" > Вернуться назад< /a> < /div>

Практическая часть

Порядок выполнения работы

1) Создать следующие страницы:

- страница вывода всех данных одной таблицы;

- страница добавления записи;

- страница редактирования записей;

2) Создать скрипт для удаления записей из таблицы.

 

3. Контрольные вопросы

1) С помощью какой команды осуществляется сохранений данных, полученных с формы?

2) Какой используется тег для получения данных, вводимых пользователем?

 

 


Поделиться:



Последнее изменение этой страницы: 2017-03-14; Просмотров: 375; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.022 с.)
Главная | Случайная страница | Обратная связь