Вы здесь:
Рефераты и курсовые по IT
Первые шаги с PHP
Первые шаги с РНР
Автор: Любомир Гайдамака, DMedia™ Ltd.
Вступление
Работа с базами данных
Передача данных из формы в базу данных
После установки и настройки РНР на вашей рабочей станции или сервере (см. "Как заставить работать PHP4.0.0, Apache и MySQL на вашей Windows95/98/2000/NT или Unix машине") давайте приступим к практическому изучению этого языка.
Вынужден сразу предупредить, что изучение РНР, как, впрочем, и любого другого языка программирования - это не экскурсия в Киевский зоопарк. Когда я начинал изучать этот язык, я специально установил на свой старенький Pentium-233 RedHat Linux 5.2 (который был связан сетью с более мощным рабочим компьютером с Windows) и после бился с Linux-сервером две недели, чтобы установить РНР, MySQL и заставить его показывать этот скрипт:
echo phpinfo(); ?>
Сколько было радости, когда в моем броузере появилось море разных табличек и куча полезной информации! Вот я и решил сделать сайт PHP.com.ua, чтобы помочь тем, кому трудно дается английский язык, тем, кто хочет выучить РНР или, наоборот, поделиться своим опытом и знаниями.
Работа с базами данных
Первое, что нужно для создания динамических страничек - база данных, где будет храниться вся информация. Хотите иметь возможность просматривать содержимое таблиц баз данных, делать выборки, добавлять или обновлять данные? Все это можно делать с помощью встроенных функций в РНР для работы с базами данных.
Для начала работы у нас должна быть установлена база PostgreSQL или MySQL. Я рекомендую последнюю, так как она работает под Unix и Windows, более стабильна, быстра и ошибкоустойчива. Еще раз сформулируем нашу задачу: освоить присоединение к серверу базы данных, создание и исполнение SQL запросов, а также работу с ошибками. Без знания этих действий мы вряд ли сможем без проблем управляться с базой данных.
Итак, приступим. Кстати, далее по тексту я буду использовать MySQL в виду изложенных выше причин (хотя с PostgreSQL все действия похожи, надо лишь поменять префикс mysql_ на pg_).
Создадим базу данных телефонных номеров сотрудников вашей фирмы для наших тестов:
shell>mysql -u root
mysql> create database basa;
Query OK, 1 row affected (0.00 sec)
mysql> use basa;
Database changed
mysql> CREATE TABLE phone (
-> id int(10) NOT NULL auto_increment,
-> name varchar(32) NOT NULL,
-> phone varchar(32) NOT NULL,
-> PRIMARY KEY (id)
-> );
Query OK, 0 rows affected (0.00 sec)
mysql>exit
Bye
Или используйте файл из архива (в конце статьи) basa.sql, поместите его в каталог MySQL и сделайте так:
shell>mysql -u root < basa.sql
А сейчас напишем скрипт view.phtml , который будет показывать данные из базы данных.
/* Замените нижеследующие переменные на свои */
$host = "localhost"; // MySQL server
$user_db = "root"; // MySQL пользователь
$pass_db = ""; // MySQL пароль
$dbase = "basa"; // MySQL база данных
$dtable = "phone"; // Таблица в базе данных
/* Соединение с сервером базы данных */
mysql_connect ("$host", "$user_db", "$pass_db");
/* Выбор базы данных */
mysql_select_db("$dbase");
/* Создание SQL запроса */
$sql = "SELECT * FROM $dtable";
/* Исполнение SQL запроса */
$result = mysql_query($sql);
/* Проверка количества вернувшихся строчек
в результате*/
$rows = mysql_num_rows($result);
/* Если нет результата или результат меньше 1,
то предупредить нас об этом или вывести результат*/
if ((!$rows) || ($rows < 1)) {
echo "Результатов НЕТ!!!";
} else {
echo '
while($row = mysql_fetch_array($result)) {
$id = $row["id"];
$name = $row["name"];
$phone = $row["phone"];
echo "
}
}
?>
При запуске этого скрипта мы получим страничку с текстом "Результатов НЕТ!!!", так как в базе данных эти самые данные отсутствуют. Что делать? Перейти к следующему разделу и научиться добавлять данные из форм!
Передача данных из формы в базу данных
Создадим одну страничку под названием forma.html с HTML формой и скрипт add.phtml, который будет обрабатывать данные из этой формы.
Страничка forma.html:
Скрипт add.phtml:
/* Замените нижеследующие переменные на свои */
$host = "localhost"; // MySQL server
$user_db = "root"; // MySQL пользователь
$pass_db = ""; // MySQL пароль
$dbase = "basa"; // MySQL база данных
$dtable = "phone"; // Таблица в базе данных
/* Соединение с сервером базы данных */
mysql_connect ("$host", "$user_db", "$pass_db");
/* Выбор базы данных */
mysql_select_db("$dbase");
/* В Н И М А Н И Е!!! Если Вы работаете под Windows,
то снимите комментарий из следующих строк */
// $name = $HTTP_GET_VARS["name"];
// $phone = $HTTP_GET_VARS["phone"];
// Основные действия скрипта
// Создание SQL запроса
$sql = "INSERT INTO $dtable (id,name,phone) ";
$sql .= "VALUES ('','$name','$phone')";
/* Исполнение SQL запроса */
$result = mysql_query($sql);
// Проверка исполнения операции
if(!$result) {
echo "
Ошибка!
n";echo mysql_errno().": ".mysql_error()."
";
} else {
print "";
echo "Запись $name - $phone создана!";
//echo phpinfo();
}
?>
Как видите, данные из формы (поля name и phone) РНР понимает как переменные. И эти переменные очень легко можно добавить в базу данных. Теперь при просмотре странички view.phtml Вы увидите то, что собственноручно внесли.
Данные можно обрабатывать скриптом, а также как часть URL. Например: http://localhost/add.phtml?name=SomeName&phone=268-3962 добавит в базу данных имя SomeName с телефоном 268-3962. Кстати, это вовсе не номер телефона моей девушки - можете не звонить!!!
Все файлы, о которых шла речь в этой статье вы можете взять здесь.
Комментарии:
ИНФОРМАЦИЯ ПО РЕФЕРАТУ:
СТУДЕНТАМ! Уважаемые пользователи нашей Коллекции! Мы напоминаем, что наша коллекция общедоступная. Поэтому может случиться так, что ваш одногруппник также нашел эту работу. Поэтому при использовании данного реферата будьте осторожны. Постарайтесь написать свой - оригинальный и интересный реферат или курсовую работу. Только так вы получите высокую оценку и повысите свои знания.
Если у вас возникнут затруднения - обратитесь в нашу Службу заказа рефератов. Наши опытные специалисты-профессионалы точно и в срок напишут работу любой сложности: от диссертации до реферата. Прочитав такую качественную и полностью готовую к сдаче работу (написанную на основе последних литературных источников) и поработав с ней, вы также повысите ваш образовательный уровень и сэкономите ваше драгоценное время! Ссылки на сайт нашей службы вы можете найти в левом большом меню.
ВЕБ-ИЗДАТЕЛЯМ! Копирование данной работы на другие Интернет-сайты возможно, но с разрешения администрации сайта! Если вы желаете скопировать данную информацию, пожалуйста, обратитесь к администраторам Library.by. Скорее всего, мы любезно разрешим перепечатать необходимый вам текст с маленькими условиями! Любое иное копирование информации незаконно.


Поиск по БЕЛОРУССКИМ рефератам 