Итак, рассмотрим пример веб-приложения со следующей функциональностью:
показать список товаров
подредактировать конкретный товар
удалить товар
добавить товаров
(12 Кб)
Для успешной работы приложения на вашей машине надо сделать следующее:
создать базу данных products (удобно через phpMyAdmin)
содержимое файла schema.sql скормить этой базе, в результате чего будет создана одноименная таблица
в файле server.php поправить данные (логин/пароль) для коннекта с базой
В принципе, большинство веб-приложений требуют реализации такой функциональности: вывести список элементов и редактировать их, так что эта базовая система может с минимальными доработками переделана под другую предметную область.
У кого что не получается – пишите в комменты, будем делиться опытом друг с другом.
P.S. Удобно дампить переменные (смотреть их содержимое) с помощью имеющегося в проекте класса , для этого надо сделать такой вызов:
Эта первая из серии “админских” статей-руководств по превращению среднестатистической домашней машины в (W/L)AMP-сервер со всеми вытекающими.
Было бы нелогично начать серию с чего-то другого, нежели c рассказа об Apache.
Что есть Apache ?
Apache (тот, который буква A в сокращении LAMP) – это созданный усилиями open-source сообщества популярный бесплатный web-сервер. Он начинался как проект Национального Центра Суперкомпьютерных Вычислений при университете штата Иллинойс, но в последствии код был значительно переработан и передан под управление Apache Software Foundation, который ныне руководит разработкой. Основной задачей фонд ставит создание бесплатного программного обеспечения для реализации стандартных протоколов использующихся в Интернет. Сами протоколы не принадлежат никакой компании и таким-же должно быть и программное обеспечение, решили в фонде. Успешное начинание продолжает свой путь, и сейчас Apache обслуживает более 10 млн. серверов во всем мире.
Итак, Apache – это универсальный, быстрый, легко расширяемый бесплатный web-сервер, доступный для свободного скачивания и установки практически на любой платформе, как в виде бинарных файлов, так и исходных кодов. Apache реализует современные протоколы Интернет, такие как HTTP/1.1 – то есть, говоря по-русски – на его основе можно создавать веб-сайты, и размещать их в интернет.
Домашняя страница проекта: http://httpd.apache.org/ – там можно не только cкачать свежую версию, но и почерпнуть массу полезной информации.
Версионность
На сегодняшний день (май 2007г.) существует три ветки Apache – 1.3.х, 2.0.x и 2.2.х. Первая и вторая версия на данный момент активно используется на многих серверах и пока не собираются сходить со сцены. Версия 2.2 активно развивается и в скором времени вытеснит предыдущие. Для версий 1.3 и 2.0 сейчас выпускаются только security fixes – то есть заплатки безопасности. Все три версии используют разные подходы к реализации API, поэтому все три требуют разные версии модулей расширений. Важно соблюдать версионность Apache и его модулей чтобы на установку сервера не пришлось вызывать шамана с бубном и оленями.
Установка в среде Windows
Почти наверняка, на вашей домашней машине установлена какая-то из версий ОС Windows. Для установки Apache совершенно не требуется установки Linux или особой версии Windows – подойдет любая. Так как на дворе год 2007, наверняка ваша версия – Windows XP. Для начала надо скачать самому или попросить друга скачать последнюю версию Apache с сайта http://httpd.apache.org (опять же, на сегодня это 2.2.4). Для Windows, Apache распространяется в виде .msi-файла (Windows Installer) – если такового нет на вашей Windows-98 или 2000 машине, придется установить его отдельно (goto microsoft.com). После запуска инсталлера вам нужно лишь нажимать кнопку Next – он сделает все за вас. Единственное что потребуется – указать такие вещи, когда инсталлер спросит:
Network domain – домен сети, может быть что угодно, для домашнего компьютера достаточно сказать “home” или чтото вроде.
Server name – имя вашей машины, вы должны знать его если устанавливали Windows сами. Попробуйте нажать на ярлыке Moй Компьютер правой клавишей мыши и выбрать Свойства. В любом случае, это не имеет решающего значения – пусть имя будет “bombusbee”.
Administrator’s email address – емейл админа. Достаточно написать admin@home
For whom to install Apache – вопрос как установить сервер – как службу Windows – то есть как приложение, постоянно загруженное в память комьютера и работающее “в фоне”, или как обычное приложение, которое каждый пользователь будет запускать самостоятельно. Нет особенных причин, по которым вам следует выбирать второй пункт – чтобы не усложнять себе жизнь, выбираете вариант со службой.
The installation type – выбирайте typical
Where to install – опять же, если нет противопоказаний, устанавливайте в каталог по умолчанию (C:\Program Files\Apache Software Foundation\Apache2.2)
После окончания установки файлов, инсталлер сам “пропишет” Apache как службу Windows и запустит его.
Также, будут автоматически созданы файлы настроек (самый важный из которых httpd.conf) и тестовые html файлы. Чтобы потестировать свежеустановленный сервер, запустите браузер, наберите в строке адреса либо http://bombusbee/ либо http://localhost/ либо http://127.0.0.1/ Перед вами должна появится тестовая страница Apache. Если так – поздравляю, установка успешно завершена !
Что делать если что-то пошло не так ?
Если на вашей машине уже установлен и запущен web-сервер IIS, который идет в комплекте с Windows, то стандартный порт 80, через который происходит общение клиента (браузера) с web-сервером уже занят. Apache попытается использовать стандартный порт 80, но если он уже занят, Apache не запустится. Чтобы изменить порт который будет “слушать” Apache исправте конфигурационный файл httpd.conf (он лежит в папке conf/ под корнем Apache, см. пункт 6. установки выше) таким образом: найдите поиском строку Listen и напишите свою строку таким образом:
Listen 8080
В строке перед Listen не должно быть других символов. Знак # в httpd.conf означает строку комментария которая игнорируется сервером. После этого потребуется сохранить файл httpd.conf и перезапустить Apache. Для перезапуска откройте Панель Управления -> Администрирование -> Службы. В открывшемся списке служб найдите Apache и нажмите кнопку Перезапустить в панели наверху. Если все удачно, Apache запустится, и будет “слушать” не порт 80, а порт 8080 и к серверу придется образаться как http://bombusbee:8080/ или http://localhost:8080/ или http://127.0.0.1:8080/
Что дальше ?
Сервер “обслуживает” файлы которые находятся в папке htdocs/ под корнем установки Apache. Все файлы помещенные в этот каталог могут быть выданы сервером клиенту (например браузеру). Попробуйте положить текстовый файл, html-файл или картинку в папку htdocs/ и обратиться к этому файлу через браузер, набрав например http://localhost/myfile.txt. Если вы уже создали – положите его и потестируйте уже под реальным сервером, которым стал ваш компьютер.
Как это получилось: PHP-сервер ищет в тексте файла куски кода, обрамленные в <? … ?>, изымает их текст, выполняет их, а на их место подставляет результаты работы. Обращаю внимание: если в этом коде убрать команду echo, отвечающую за передачу текста в броузер, то на месте этой PHP-вставки будет просто пустая строка.
Вы можете в броузере посмотреть код результатирующего документа HTML (обычно это меню “Вид” -> “Исходный код страницы” в броузере). Там будет следующее:
Подробнее о функции date() можно узнать на сайте , рекомендую. Там же после стандартной документации идут комментарии других PHP-разработчиков, часто очень полезные.
Вместо функции date() может стоять просто строка или арифметическое выражение:
Как видно, конкатенация строк производится через символ точки. Использование знака “плюс” сразу приведет оба операнда к числовому типу, что не всегда в ваших интересах
Легко заметить, что документ обрамлён парой тэгов <html>.
Далее идут две большие секции – <head> и <body>.
Секция <head> содержит директивы, относящиеся к документу в целом: заголовок (в данном случае это строка “Умелые ручки”, обрамленная тэгом <title> – эта строка будет показана в заголовке окна броузера), кодировку, параметры кэширования, подгрузку внешних файлов со скриптами или стилями, о чем мы поговорим позже.
Секция <body> содержит сам документ. В нашем примере это два тэга: <h1> (от англ. “header №1” – “заголовок №1“) и<p> (от англ. “paragraph” – “параграф“).
Вот как может выглядеть результат открытия примера выше в броузере:
В следующий раз мы поговорим, как добавить сюда результаты работы серверного скрипта на PHP.