Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
php / lab1.doc
Скачиваний:
45
Добавлен:
07.02.2016
Размер:
133.12 Кб
Скачать

2.2. Установка php

Загрузить PHP можно с официального сайта PHP http://www.php.net из секции Downloads два файла

1. Запустите exe-файл. В открывшемся диалоговом окне нажмите кнопку Next.

2. Согласитесь с условиями лицензии, нажав кнопку I Agree. В появившемся диалоговом окне выберите тип установки Standard.

3. Теперь укажите директорию, в которую будет установлен PHP. Оставьте указанную по умолчанию (C:\PHP)

Оставьте в текстовых полях значения по умолчанию.

5. Выберите сервер, на который будет настроен PHP. В нашем случае это — Apache.

Начнется процесс копирования файлов. После его окончания, возможно, появятся еще некоторые диалоговые окна с различными извещениями. Не обращайте на них внимания.

На этом этапе язык PHP можно считать уже почти установленным — нам осталось только настроить Apache, чтобы он мог распознать PHP-сценарии, а также подключить дополнительные модули, которые содержатся в загруженном нами zip-архиве.

Настройка Apache для работы с PHP

1. Откройте в Блокноте файл конфигурации Apache httpd.conf, находящийся в каталоге C:\Program Files\Apache Group\Apache\conf.

2. Найдите в тексте файла такую закомментированную строку:

#AddType application/x-httpd-php php

3. Раскройте комментарий:

AddType application/x-httpd-php php

Таким образом, мы присвоили всем файлам с расширением php тип

application/x-httpd-php.

4. Сразу же после этой строки добавьте такие настройки:

ScriptAlias /_php/ "C:/PHP/"

Action application/x-httpd-php "/_php/php.exe"

Этим мы, во-первых, создаем синоним _php для каталога с процессором PHP, чтобы Apache мог получить к нему доступ, а во-вторых, связываем все файлы типа application/x-httpd-php с обработчиком php.exe.

Префикс к строке "_php" выбран из такого расчета, чтобы она в будущем не конфликтовала с именами каталогов, которые вы можете объявить на вашем хосте.

5. Сохраните изменения в файле конфигурации, остановите Apache, если он был до этого запущен (пункт Пуск u Программы u Apache Web Server u Management u Stop Apache), и стартуйте сервер снова. Если Apache не запускается (его окно открывается и тут же закрывается), значит, вы где-то допустили синтаксическую ошибку.

Тестирование PHP

Давайте теперь убедимся, что PHP-сценарии работают. Для этого создадим в каталоге C:/Program Files/Apache Group/Apache/htdocs файл test.php со следующим содержанием:

Листинг 5.1. Тестовый сценарий

<?

echo "It works!<br>\n";

phpinfo();

?>

Теперь наберите в браузере: http://localhost/test.php. Должна отобразиться

страница с разнообразной информацией о PHP, которая генерируется функцией phpinfo().

Напоминаем, что PHP-сценарии — не то же самое, что CGI-сценарии. В частности, если CGI-сценарий обычно располагают в /cgi-bin/ или /cgi/, то php-сценарий должен находиться в каталоге с документами.

Если страница не отображается, значит, вы допустили ошибку в файле httpd.conf.

Откройте его снова и исправьте ошибку, затем не забудьте перезапустить Apache.

2.3. Установка MySql

1. Дистрибутив MySQL можно загрузить с официального сайта MySQL (http://www.mysql.com, раздел Downloads). Дистрибутив представляет собой zip-архив, который нужно развернуть в любой удобный вам каталог.

2. Запустите setup.exe из только что разархивированного дистрибутива. Нажмите кнопку Next.

3. В появившемся информационном окне снова нажмите Next. Откроется диалог с запросом о выборе каталога для MySQL. По умолчанию предлагается C:\mysql. Оставьте этот каталог и нажмите Next.

4. Выберите тип установки Typical. Начнется копирование файлов MySQL. Дождитесь его окончания. MySQL установлена.

5. Для того чтобы активизировать MySQL-сервер, запустите исполняемый файл C:\MySQL\bin\mysqld.exe. Можете создать для него ярлык, однако, поскольку обычно MySQL работает "в связке" с Apache, будет логично создать командный файл, который будет стартовать и Apache, и MySQL. Назовем его server.bat. Вот содержание этого файла:

@echo off

"C:\MySQL\bin\mysqld"

start /m "C:\Program Files\Apache Group\Apache\Apache"

Для операционных систем Windows NT и Widows 2000, однако, будет удобнее использовать несколько другие команды (иначе в этих системах окно процесса MySQL будет постоянно видно на экране, что нежелательно):

@echo off

start C:\MySQL\bin\mysqld-nt --standalone

C:\Progra~1\Apache~1\Apache\Apache -k start

Перед выключением или перезагрузкой компьютера нужно завершать работу Apache и MySQL. Для этого удобнее всего создать следующий bat-файл с именем, например, shutdown.bat.

@echo off

"C:\Program Files\Apache Group\Apache\Apache" -k shutdown

"C:\MySQL\bin\mysqladmin" -u root shutdown

Тестирование MySQL

Давайте теперь проверим, все ли работает. Для начала запустите наш файл server.bat, чтобы активизировать сервер. Создайте следующий PHP-сценарий с именем mysql.php в каталоге C:/Program Files/Apache Group/Apache/htdocs.

<?

define("DBName","test");

define("HostName","localhost");

define("UserName","root");

define("Password","");

if(!mysql_connect(HostName,UserName,Password))

{ echo "Не могу соединиться с базой ".DBName."!<br>";

echo mysql_error();

exit;

}

mysql_select_db(DBName);

// Создаем таблицу t. Если такая таблица уже есть,

// сообщение об ошибке будет подавлено

@mysql_query("create table t(id int, a text)");

// Вставляем в таблицу 10 записей

for($i=0; $i<10; $i++)

{ $id=time();

mysql_query("insert into t(id, a) values($id, 'No.$i!')");

}

$r=mysql_query("select * from t");

for($i=0; $i<mysql_num_rows($r); $i++)

{ $f=mysql_fetch_array($r);

echo "$f[id] -> $f[a]<br>\n";

}

?>

Теперь наберите в браузере:

http://localhost/mysql.php

Если все сконфигурировано правильно, вы должны получить несколько строк вывода в браузере без сообщений об ошибках. При каждом запуске в таблицу t добавляются новые строки, так что с каждым нажатием кнопки Обновить в браузере объем таблицы будет все увеличиваться.

В тексте программы присутствуют константы DBName, HostName, UserName и Password.

DBName должен содержать имя базы данных (в нашем случае это test — база данных, которая создается MySQL по умолчанию). HostName — всегда localhost, ведь мы работаем на локальном компьютере. В макросе UserName проще всего подставлять root, который является владельцем всех таблиц. При установке MySQL пользователю root не назначается пароль, так что константа Password равна пустой строке.

Соседние файлы в папке php