Оглавление Вступительное слово 1
Об учебном центре 2
Для кого написана эта книга 3
Как работать с книгой 4
Источники информации 4
Благодарности 5
ЧАСТЬ I. ОСНОВЫ ЯЗЫКА РНР 7
Глава 1. Основы клиент-серверного взаимодействия в Интернете 9
Необходимые определения 10
IP-адрес 10
Протокол 11
Порт 11
Протокол HTTP 12
Запрос клиента 12
Ответ сервера 14
CGI 15
Глава 2. Установка Web-сервера Apache и модуля PHP 5 в Windows 17
Установка сервера Apache 17
Директивы конфигурации Apache 20
Установка модуля PHP 22
Настройка взаимодействия Apache и PHP 24
Глава 3. Создание сценариев на PHP. Типы данных, переменные, операторы 26
Редакторы для работы с PHP 26
Базовый синтаксис 26
Типы данных 28
Комментарии 29
Выражения и операторы 30
Константы 30
Переменные 31
Ссылки 33
Глава 4. Операции и управляющие конструкции 35
Арифметические операции 35
Поразрядные операции 37
Оператор подавления ошибки 37
Операции сравнения 38
Логические операции PHP 39
Преобразование типов 39
Тернарная операция 40
Управляющие конструкции 40
Условные конструкции 40
Условная конструкция if...else 40
Выход из управляющей структуры или сценария 42
Оператор switch 44
Циклы 45
Цикл while 45
Цикл for 46
Глава 5. Функции и повторное использование кода 49
Встроенные функции 49
Функции для работы с переменными 50
Проверка и установка типов переменных 50
Проверка состояния переменных 51
Повторная интерпретация переменных 52
Встроенные функции для работы с датой и временем 52
Функция date() 52
Функция mktime() 56
Определение и вызов пользовательских функций 57
Передача параметров функции по ссылке 58
Функции и область действия переменной 59
Статические переменные 60
Повторное использование кода 61
Глава 6. Массивы 62
Ассоциативные массивы 63
Многомерные массивы 65
Функции для работы с массивами 66
Автоглобальные массивы 69
Глава 7. Передача данных через HTML-формы 71
Теги формы 71
Тег 71
Тег 73
Тег 74
Работа с формами в PHP 74
Передача данных из полей checkbox 77
Глава 8. Работа с файлами 79
Открытие файла 79
Права доступа к файлу 80
Запись в файл 82
Закрытие файла 82
Считывание данных из файла 83
Блокировка файла 85
Функции для работы с каталогами 86
Глава 9. Строковые функции и регулярные выражения 87
Строки в PHP 87
Преобразование данных формы 87
Форматирование строк для представления на экране 88
Форматирование строк для печати 89
Функции изменения регистра строки и их действие 90
Объединение и разделение строк с помощью строковых функций 90
Поиск и замена подстрок 91
Использование функции substr() 91
Определение позиции подстроки: функция strpos() 92
Замена подстрок: str_replace(), substr_replace(), strstr() 92
Регулярные выражения 94
Глава 10. Графика в PHP 5 101
Графические форматы данных 101
JPEG 101
GIF 101
PNG 102
Подключение графической библиотеки 102
Создание изображений 103
Глава 11. Cookies и управление сессиями 109
Cookie 109
Счетчик посещений 111
Сессии 113
Глава 12. Загрузка файлов на сервер 116
Глава 13. Объектная модель в PHP 5 119
Классы и объекты 119
Конструктор класса 120
Создание объекта 121
Вложенные объекты 121
Копирование и клонирование объектов 122
Наследование 123
Финальные классы 125
Доступ к свойствам и методам класса 126
Статические свойства и методы класса 129
Константа класса 130
Ключевое слово instanceof 130
Обработка ошибок 131
Автозагрузка класса 132
ЧАСТЬ II. PHP И MYSQL 135
Глава 14. Реляционные базы данных 137
Таблицы, записи, столбцы 138
Отношения и ключи 139
Глава 15. Установка сервера MySQL 5 в Windows 141
Глава 16. Создание баз данных 145
Типы данных MySQL 145
Строковые типы 145
Форматы записи даты и времени 146
Хранение числовых значений 147
Работа с клиентской программой mysql 148
Создание базы данных taxi 149
Запись данных в таблицы 153
Клиентские утилиты 154
Утилита командной строки mysql 154
Утилита mysqldump 158
Утилита mysqlimport 159
Глава 17. Запросы к базе данных 161
Команда SELECT 161
Запросы с указанием критерия отбора данных 163
Группировка данных и агрегатные функции 165
Запросы к двум и более таблицам 167
Команды обновления и удаления данных в таблицах 168
Изменение структуры таблицы 169
Создание индексов 170
Вложенные запросы 171
Табличные вложенные запросы 171
Глава 18. Обеспечение безопасности данных 173
Привилегии в MySQL 173
Транзакции 177
Глава 19. Расширение mysqli для работы с базами данных 180
Процедурный стиль создания скрипта для работы с MySQL 181
Подключение к серверу и выбор базы данных 181
Запросы к базе данных 182
Объектный подход 185
Класс mysqli 185
Класс mysqli_result 186
Класс mysqli_stmt 187
ЧАСТЬ III. РАЗРАБОТКА ПРИЛОЖЕНИЯ 191
Глава 20. Построение сайта электронной коммерции 193
Задача 193
Структура сайта 193
Файлы приложения электронной коммерции 194
Глава 21. Реализация базы данных 197
Схема базы данных 197
Создание и заполнение базы данных 198
Примеры запросов к базе данных 202
Глава 22. Объявление классов 205
Класс hat_foot 205
Класс baza 206
Класс country 208
Класс city 210
Класс hotel 210
Класс tour 212
Класс customer 214
Класс order 218
Глава 23. Сценарии сайта 222
Титульная страница сайта 222
Выбор и заказ тура 224
Страницы описаний стран, городов и отелей 228
Администрирование сайта 231
ЧАСТЬ IV. XML И PHP 235
Глава 24. Язык XML 237
Синтаксис XML. Правильно оформленный XML 238
XML-декларация 240
Кодировка в XML 240
Атрибуты 241
Комментарии 241
Процессуальная инструкция 241
Пространства имен XML 242
Особые символы 244
CDATA 244
Глава 25. Преобразование XML-документов с помощью стилевых таблиц XSL 246
Таблицы стилей XSL 247
Шаблоны в таблицах стилей XSL 249
Передача содержимого элемента в выходной документ 250
Создание цикла с помощью элемента 251
Сортировка данных в выходном документе 252
XSLT (eXtensible Stylesheet Language for Transformations) 255
Древовидная структура XML-документа 255
Шаблоны в таблицах стилей XSLT 256
Правила по умолчанию для обработки XML-документа стилевыми таблицами 256
Использование шаблонов в таблице стилей 257
Атрибут select 259
Вычисление значения узла с помощью элемента xsl:value-of 260
Соответствие именам элементов 260
Соответствие дочерним узлам с помощью / 260
Соответствие потомкам с помощью // 261
Соответствие атрибутам с помощью @ 262
Добавление атрибутов в выходной поток с помощью xsl:attribute 263
Атрибут mode — средство форматирования в выходном документе 264
Глава 26. Применение XPath при обработке XML-документов 266
Выделение ветвей 267
Выделение нескольких путей 268
Выделение атрибутов 268
Оси и проверки узлов 269
Сокращенная запись путей 271
Глава 27. Объектная модель документа 275
Дерево документа 276
Объект Node 277
Объект NodeList 278
Объект Document 279
Объект Element 279
Объект Attr 280
Глава 28. Новостная лента RSS 282
Глава 29. Создание и анализ XML-документов средствами PHP 286
SAX 287
Создание парсера 287
Определение функций-обработчиков событий 288
Чтение и обработка XML-документа 288
Функции обработки текстового содержимого узла и обработки ошибок 290
SAX-парсер новостной ленты 290
Расширение SimpleXML в PHP 5 293
Расширение DOM и XSL в PHP 5 298
Применение DOM-функций для парсинга XML-документов 299
Расширение XSL в PHP 5 303
Приложение. Описание компакт-диска 305
Предметный указатель 306
VIII Оглавление IX Оглавление