Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Написание сценариев PHP с использованием PEAR::DB ⇐ ПредыдущаяСтр 7 из 7
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; Просмотров: 377; Нарушение авторского права страницы