Оглавление Введение 1
Глава 1. Как устроен Web-сайт? 3
1.1. Основные понятия 3
1.2. Как устроен HTML-документ? 5
1.2.1. Начальные сведения 6
1.2.2. Структура документа 9
Тег 9
Тег 9
Тег 10
Тег 14
Тег 14
Тег 15
Тег 15
Тег 17
Теги и 18
Теги, влияющие на расположение элементов 19
Специальные атрибуты 21
1.2.3. Ссылки 22
Текстовые ссылки 23
Графические и комбинированные ссылки 23
Графические карты ссылок 24
Внутренние ссылки 28
Адреса ссылок 29
1.2.4. Вставка элементов из внешних источников 32
Вставка изображений 32
Вставка Flash-документов 36
Вставка звука и видео 38
Тег 41
1.2.5. Разметка страницы 44
Таблицы 45
Фреймы 54
1.2.6. Форматирование текста 61
Заголовки 61
Физические стили 62
63
Тег 63
Индексы 64
Относительное изменение размера шрифта 65
Текст с отступом 66
Бегущая строка 66
Предварительно отформатированный текст 68
Списки 68
Специальные символы 72
Другие теги разметки текстов 73
Вывод HTML-кода как текста 74
1.2.7. Формы и элементы пользовательского интерфейса 74
Формы 75
Элементы пользовательского интерфейса 79
1.3. Каскадные таблицы стилей 90
1.3.1. Встраивание таблиц стилей в HTML-документ 91
1.3.2. Правила форматирования 93
1.3.3. Применение нескольких таблиц стилей 95
1.3.4. Единицы измерения 96
1.3.5. Шрифты 97
1.3.6. Цвет и фон 99
1.3.7. Размеры, поля, отступы и границы 101
1.3.8. Текст 104
1.3.9. Обтекание и видимость 106
1.3.10. Позиционирование 108
1.3.11. Графические фильтры 109
Статические фильтры 110
Динамические фильтры 115
1.4. Что и как делают клиентские сценарии? 121
1.5. Что и как делают серверные сценарии? 125
Глава 2. Основы JavaScript 127
2.1. Подготовка к программированию 127
2.2. Ввод и вывод данных 130
2.2.1. Метод alert 130
2.2.2. Метод confirm 131
2.2.3. Метод prompt 132
2.2.4. Метод write 132
2.3. Типы данных 133
2.4. Переменные и оператор присваивания 140
2.4.1. Имена переменных 140
2.4.2. Создание переменных 141
2.4.3. Область действия переменных 143
2.5. Операторы 143
2.5.1. Комментарии 144
2.5.2. Арифметические операторы 144
2.5.3. Дополнительные операторы присваивания 147
2.5.4. Операторы сравнения 148
2.5.5. Логические операторы 150
2.5.6. Операторы условного перехода 151
Оператор if 151
Оператор switch 153
Оператор условия ?: 156
2.5.7. Операторы цикла 157
Оператор for 157
Оператор while 160
Оператор do-while 161
2.5.8. Выражения с операторами 162
2.6. Функции 164
2.6.1. Встроенные функции 165
2.6.2. Пользовательские функции 169
2.6.3. Выражения с функциями 175
2.7. Строки 176
2.7.1. Создание строкового объекта 176
2.7.2. Свойства объекта String 177
2.7.3. Методы объекта String обработки строк 178
2.7.4. Методы объекта String форматирования строк 183
2.7.5. Функции вставки и замены подстрок 185
2.7.6. Функции удаления ведущих и заключительных пробелов 186
2.8. Массивы 188
2.8.1. Создание массива 188
2.8.2. Многомерные массивы 190
2.8.3. Копирование массива 191
2.8.4. Свойства объекта Array 192
2.8.5. Методы объекта Array 193
2.8.6. Функции обработки числовых массивов 197
2.9. Числа 199
2.9.1. Создание объекта Number 202
2.9.2. Свойства объекта Number 202
2.9.3. Методы объекта Number 203
2.10. Математические вычисления 205
2.10.1. Свойства объекта Math 205
2.10.2. Методы объекта Math 205
2.11. Дата и время 207
2.11.1. Создание объекта Date 207
2.11.2. Методы объекта Date 209
2.11.3. Календарь 215
2.12. Объект Boolean 221
2.13. Объект Function 222
2.13.1. Создание объекта Function 222
2.13.2. Свойства объекта Function 223
2.13.3. Методы объекта Function 224
2.14. Пользовательские объекты 226
2.14.1. Создание объекта 226
2.14.2. Добавление свойств 229
2.14.3. Связанные объекты 229
2.14.4. Пример создания базы данных с помощью объектов 231
2.15. Специальные операторы 236
2.15.1. Побитовые операторы 236
2.15.2. Объектные операторы 237
Оператор удаления свойств объекта delete 237
Оператор проверки наличия свойств in 238
Оператор проверки принадлежности объекта модели instanceof 239
Глава 3. Клиентские сценарии на JavaScript 241
3.1. Объекты, управляемые сценариями 241
3.2. Обработка событий 249
3.2.1. Привязка обработчиков к элементам и событиям 249
3.2.2. Свойства события 255
3.2.3. Прохождение событий 261
3.3. Динамическое изменение элементов документа 264
3.3.1. Использование метода write() 265
3.3.2. Изменение значений атрибутов элементов 265
3.3.4. Изменение элементов 269
3.4. Работа с каскадными таблицами стилей 271
3.5. Окна и фреймы 278
3.5.1. Создание новых окон 279
3.5.2. Фреймы 283
Отношения между фреймами и главным окном 283
Предотвращение использования фреймов 289
Проверка загрузки всех фреймов 289
3.5.3. Плавающие фреймы 290
3.5.4. Всплывающие окна 292
3.6. Загрузка изображений 296
3.7. Управление процессами во времени 299
3.8. Работа с cookie 302
3.8.1. Общие сведения 302
3.8.2. Функции чтения, записи данных и удаления cookie 305
3.9. Перемещение элементов мышью 308
3.9.1. Перемещение графических объектов 308
3.9.2. Перемещение текстовых областей 310
3.9.3. Перемещение плавающих фреймов 312
3.10. Меню 316
3.10.1. Раскрывающийся список 316
3.10.2. Одноуровневое меню 317
3.10.3. Контекстное меню 318
3.10.4. Двухуровневое меню 320
3.10.5. Древовидный список 328
3.11. Таблицы 332
3.11.1. Доступ к элементам таблицы 332
3.11.2. Добавление и удаление строк таблицы 334
3.12. Простая база данных в текстовом файле 335
3.12.1. Элемент управления табличными данными 335
3.12.2. Перемещение по записям простых баз данных 341
3.12.3. Сортировка данных таблицы 344
3.12.4. Фильтрация данных таблицы 346
3.13. Поиск в тексте 348
3.14. Движение элементов по заданной траектории 350
3.15. Рисование линий 354
3.16. Обработка данных форм 357
Глава 4. Основы PHP 365
4.1. Подготовка к программированию 365
4.2. Вывод данных 368
4.3. Типы данных 370
4.4. Переменные и оператор присваивания 373
4.4.1. Имена переменных 373
4.4.2. Создание переменных 374
4.4.3. Отображение значений переменных 376
4.4.4. Переменные переменные 380
4.4.5. Область действия переменных 381
4.4.6. Проверка существования и типов переменных 382
4.5. Константы 383
4.6. Операторы 385
4.6.1. Комментарии 385
4.6.2. Арифметические операторы 385
4.6.3. Строковый оператор 387
4.6.4. Дополнительные операторы присваивания 387
4.6.5. Операторы сравнения 388
4.6.6. Логические операторы 389
4.6.7. Побитовые операторы 391
4.6.8. Операторы управления 392
Оператор if 392
Оператор switch 393
Оператор условия ?: 394
4.6.9. Операторы цикла 395
4.7. Строки 395
4.7.1. Двойные и одинарные кавычки 395
4.7.2. Склейка строк 398
4.7.3. Преобразование строк 398
4.7.4. Форматирование строк 403
4.8. Числа 407
4.8.1. Математические функции 407
4.8.2. Математические константы 408
4.8.3. Представление чисел в различных системах счисления 409
4.8.4. Форматирование чисел 411
4.9. Дата и время 413
4.10. Массивы 416
4.10.1. Создание массива 416
4.10.2. Многомерные массивы 419
4.10.3. Отображение массивов 420
4.10.4. Операции над массивами 421
Копирование массивов 421
Сортировка массивов 421
Перемещение по массиву 424
Запись значений элементов массива в переменные 426
Преобразование массива в текстовую строку 427
Преобразование текстовой строки в массив 427
Другие операции над массивами 428
4.11. Глобальные предопределенные переменные 430
4.12. Функции 432
4.12.1. Пользовательские функции 432
4.12.2. Переменные функции 438
4.12.3. Встроенные функции 439
4.13. Объекты 439
4.13.1. Определение класса 440
4.13.2. Применение объектов 444
4.13.3. Ограничение доступа к свойствам и методам 445
4.13.4. Клонирование и удаление объектов 447
4.13.5. Использование методов несозданных объектов 448
4.13.6. Обработка исключений 448
14.13.7. Пример класса формы 449
4.14. Выполнение PHP-кода в текстовых строках 451
Глава 5. Серверные сценарии на PHP 453
5.1. Получение данных от клиента 453
5.1.1. Получение данных из HTML-форм 453
5.1.2. Загрузка файлов на сервер 462
5.2. Переходы и передача данных между Web-страницами 465
5.2.1. Вывод ссылок 466
5.2.2. Использование форм 466
5.2.3. Применение функции header() 466
5.2.4. Добавление информации к URL-адресу 468
5.2.5. Применение cookie 469
5.2.6. Применение сеансов PHP 471
Создание сеанса 471
Особенности механизма сеансов 473
Тестовый пример применения сеанса 474
Защита страниц паролем 476
5.3. Работа с текстовыми файлами 480
5.3.1. Открытие файла 480
5.3.2. Закрытие и удаление файлов 482
5.3.3. Чтение файла 483
Чтение файла в переменную 483
Чтение файла в массив 484
Чтение файла с удалением тегов HTML 484
Чтение CSV-файла 485
5.3.4. Запись в файл 487
5.3.5. Простой счетчик посещений страницы 488
5.4. Работа с таблицами в текстовых файлах 489
5.4.1. Функции работы с табличными данными 490
Запись двумерного массива в файл 490
Чтение двумерного массива из файла 491
Поиск строки в массиве 492
Выборка строк в массиве 493
5.4.2. Сложный счетчик посещений страницы 494
5.4.3. Баннер 500
5.4.4. Гостевая книга 504
5.4.5. Форум 510
5.5. Работа с базами данных 511
5.5.1. Общие сведения о базах данных 511
5.5.2. Основные средства PHP для взаимодействия с базой данных 513
Подключение к базе данных 513
Передача запросов к базе данных 514
Обработка данных в сценарии 515
5.5.3. Гостевая книга 516
Создание базы данных 516
Определение регистрационного имени и пароля пользователя 518
Определение прав пользователя 518
Сценарии для взаимодействия с посетителем 519
Сценарии для владельца гостевой книги 522
ПРИЛОЖЕНИЯ 525
Приложение 1. Основные объекты браузера и документа 527
П1.1. Объект window 528
П1.1.1. Свойства объекта window 528
П1.1.2. Методы объекта window 529
П1.1.3. События объекта window 530
П1.2. Объект document 531
П1.2.1. Коллекции объекта document 532
П1.2.2. Методы объекта document 532
П1.2.3. События объекта document 533
П1.3. Объект location 534
П1.3.1. Свойства объекта location 534
П1.3.2. Методы объекта location 535
П1.4. Объект history 535
П1.4.1. Свойство объекта history 535
П1.4.2. Методы объекта history 535
П1.5. Объект navigator 536
П1.5.1. Свойства объекта navigator 536
П1.5.2. Коллекции объекта navigator 536
П1.5.3. Методы объекта navigator 536
П1.6. Объект event 537
П1.7. Объект screen 538
П1.8. Объект TextRange 539
П1.8.1. Свойства объекта TextRange 539
П1.8.2. Методы объекта TextRange 539
Приложение 2. Установка модуля PHP 541
П2.1. Где взять модуль PHP? 541
П2.2. Установка модуля PHP 542
П2.2.1. Размещение модуля PHP на диске компьютера 542
П2.2.2. Настройка модуля PHP 542
П2.2.3. Установка расширений PHP 543
П2.3. Настройка Web-сервера IIS 544
Приложение 3. Установка Web-сервера IIS в Windows 2000/XP 545
IV Оглавление XI Оглавление