Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Книги: [Классика] [Базы данных] [Internet/WWW] [Сети] [Программирование] [UNIX] [Windows] [Безопасность] [Графика] [Software Engineering] [ERP-системы] [Hardware]

     

Разработка Web-приложений на РНР и MySQL + CD

Лаура Томсон, Люк Веллинг

Издано: 2001, К., "ДиаСофт"
Для широкого круга разработчиков
ISBN: 966-7393-98-4
Твердый переплет, 672 стр.
Формат: 70x100/16

Начало
Краткое содержание
Введение
Структура книги
Об авторах
Компакт-диск
[Заказать книгу в магазине "Мистраль"]

Содержание

Часть 1. Использование РНР
Глава 1. Краткий обзор РНР
  Использование РНР
  Пример приложения: Bob's Auto Parts
    Форма заказа
    Обработка формы
  Встраивание РНР в HTML
    Использование РНР-дескрипторов
    Стили РНР-дескрипторов
    РНР-операторы
    Пробелы
    Комментарии
  Добавление динамического содержимого
    Вызов функций
    Функция date()
    Доступ к переменным формы
    Переменные формы
    Конкатенация строк
    Переменные и литералы
  Идентификаторы
  Переменные, объявляемые пользователем
  Присвоение значений переменным
  Типы переменных
    Типы данных РНР
    Преимущества типов
    Приведение типов
    Переменные переменных
  Константы
    Область действия переменных
  Знаки операций
    Арифметические операции
    Строковые операции
    Операции присваивания
    Операции сравнения
    Логические операции
    Поразрядные операции
    Другие операции
  Использование операций: вычисление итога по форме
  Приоритет и ассоциативность: вычисление выражений
  Функции для работы с переменными
    Проверка и установка типов переменных
    Проверка состояния переменных
    Повторная интерпретация переменных
  Управляющие структуры
  Принятие решений с помощью условных операторов
    Операторы if
    Блоки кода
    Примечание: выравнивание кода при помощи отступов
    Операторы else
    Операторы elseif
    Операторы switch
    Сравнение различных условных операторов
  Итерация: повторение действий
    Циклы while
    Циклы for
    Циклы do..while
  Выход из управляющей структуры или сценария

Глава 2. Хранение и получение данных
  Сохранение данных с целью дальнейшего использования
  Сохранение и получение заказов в компании Боба
  Обзор обработки файлов
  Открытие файла
    Режимы файлов
    Использование функции fopen() для открытия файла
    Открытие удаленных файлов через FTP или HTTP
    Проблемы, возникающие при открытии файлов
  Запись в файл
    Параметры функции fwrite()
    Форматы файлов
  Закрытие файла
  Считывание из файла
    Открытие файла для чтения: fopen()
    Определение конца файла: feof()
    Построчное считывание: fgets(),-fgetss() и fgetasv()
    Считывание всего файла: readfile(), fpassthru(), file()
    Считывание символа: fgetc()
    Считывание строк произвольной длины: fread()
  Другие полезные файловые функции
    Проверка существования файла: file_exists()
    Выяснение размера файла: filesize()
    Удаление файла unlink()
    Перемещение внутри файла: rewind(), fseek и ftell()
  Блокирование файлов
  Более рациональный способ обработки:
      системы управления базами данных
    Проблемы, связанные с использованием двумерных файлов
    Как эти проблемы решаются с помощью СУРБД

Глава 3. Использование массивов
  Что такое массив
  Численно индексированные массивы
    Инициализация численно индексированных массивов
    Доступ к содержимому массива
    Использование циклов для доступа к массиву
  Ассоциативные массивы
    Инициализация ассоциативного массива
    Доступ к элементам массива
    Организация циклов с использованием each() и list()
  Многомерные массивы
  Сортировка массивов
    Использование функции sort()
    Использование функций asort() и ksort() для
    сортировки ассоциативных массивов
    Сортировка в обратном порядке
  Сортировка многомерных массивов
    Определяемые пользователем функции сортировки
    Определяемые пользователем функции сортировки в обратном порядке
  Изменение порядка следования элементов в массивах
    Использование функции shunle()
    Использование функции array_reverse()
  Загрузка массивов из файлов
  Другие манипуляции с массивами
    Перемещение внутри массива: функции each, current(),
                 reset(), end(), next(), pos() и prev()
    Применение любой функции к каждому элементу массива: array_walk()
    Подсчет элементов в массиве: функции count(), sizeof() и
                                         array_count_values()
    Преобразование массивов в скалярные переменные: функция extract()

Глава 4. Манипулирование строками и регулярные выражения
  Пример приложения: Smart Form Mail
  Форматирование строк
    Усечение строк: функции chop(), ltrim() и trim()
    Форматирование строк для представления
    Форматирование строк для хранения: функции AddSlashes()
    и StripSlashes()
  Объединение и разделение строк с помощью строковых функций
    Использование функций explode(), imploded и join()
    Использование функции strtok()
    Использование функции substr()
  Сравнение строк
    Упорядочение строк: функции strcmp(), strcasecmp() и strnatamp()
    Проверка длины строки с помощью функции strlen()
  Сопоставление и замена подстрок с помощью строковых функций
    Поиск строк в строках: функции strstr(), strchr(),
    strrchr(), stristr()
    Определение позиции подстроки: функции strpos(), strrpos()
    Замена подстрок: str_replace(), substr_replace()
  Введение в регулярные выражения
    Наборы символов и классы
    Повторение
    Подвыражения
    Подсчитываемые подвыражения
    Привязка к началу или концу строки
    Ветвление
    Сопоставление с литеральными значениями специальных символов
    Краткое описание специальных символов
    Использование регулярных выражений в приложении Smart Form
  Поиск подстрок с помощью регулярных выражений
  Замена подстрок с помощью регулярных выражений
  Разделение строк с помощью регулярных выражений
  Сравнение строковых функций и функций регулярных выражений

Глава 5. Повторное использование кода и создание функций
  Для чего требуется повторное использование кода?
    Стоимость
    Надежность
    Единообразие
  Использование операторов required и include()
    Использование оператора required
    Расширения имен файлов и оператор require()
    РНР-дескрипторы и оператор require()
  Использование оператора required для шаблонов Web-сайта
    Использование директив auto_prepend_file и auto_append_file
    Использование оператора included
  Использование функций в РНР
    Вызов функций
    Обращение к неопределенной функции
    Регистр и имена функций
  Для чего нужно определять собственные функции?
  Базовая структура функции
    Именование функций
  Параметры
  Область действия
  Передача по ссылке и передача по значению
  Возврат из функций
  Возврат значений из функций
    Блоки кода
  Рекурсия

Глава 6. Объектно-ориентированное программирование на РНР
  Концепции объектно-ориентированного программирования
    Классы и объекты
    Полиморфизм
    Наследование
  Создание классов, атрибутов и операций в РНР
    Структура класса
    Конструкторы
  Создание экземпляров класса
  Использование атрибутов класса
  Вызов операций класса
  Реализация наследования в РНР
    Перекрытие
    Множественное наследование
    Разработка классов
  Написание кода класса

Часть 2. Использование MySQL

Глава 7. Проектирование Web-баз данных
  Общее представление о реляционных базах данных
    Таблицы
    Столбцы
    Строки
    Значения
    Ключи
    Схемы
    Отношения
  Как спроектировать собственную Web-базу данных
    Подумайте о реальных объектах, которые вы моделируете
    Избегайте хранения избыточной информации
    Используйте атомарные значения столбцов
    Выбирайте подходящие ключи
    Подумайте над вопросами, которые потребуется задать базе данных
    Избегайте проектов с большим количеством пустых атрибутов
    Типы таблиц
  Архитектура Web-баз данных
    Архитектура

Глава 8. Создание Web-базы данных
  Замечания к использованию монитора MySQL
  Вход в систему MySQL
  Создание баз данных и подключение пользователей
    Создание базы данных
  Пользователи и привилегии
  Знакомство с системами  привилегий MySQL
    Принцип наименьших привилегий
    Установка пользователей: команда GRANT
    Типы и уровни привилегий
    Команда REVOKE
  Установка пользователя для доступа из Web
    Выход из системы пользователя root
  Использование требуемой базы данных
  Создание таблиц баз данных
    Что означают другие ключевые слова
    Что означают типы столбцов
    Просмотр базы данных с помощью команд SHOW и DESCRIBE
    Идентификаторы MySQL
  Типы данных столбцов
    Числовые типы

Глава 9. Работа с базой данных MySQL
  Что такое SQL?
  Вставка данных в базу данных
  Извлечение данных из базы данных
    Извлечение данных по определенному критерию
    Извлечение данных из нескольких таблиц
    Использование других имен таблиц: псевдонимы
    Извлечение данных в определенном порядке
    Группировка и агрегирование данных
    Выбор количества отображаемый строк
  Обновление записей в базе данных
  Изменение таблиц после создания
  Удаление записей из базы данных
  Удаление таблиц
  Удаление целой базы данных

Глава 10. Доступ к базе данных MySQL из Web с помощью РНР
  Как работает архитектура Web-баз данных
  Основные шаги выполнения запросов к базе данных через Web
  Проверка и фильтрация данных, исходящих от пользователя
  Установка соединения
  Выбор базы данных
  Выполнение запроса к базе данных
  Получение результатов запроса
  Отсоединение от базы данных
  Внесение новой информации в базу данных
  Прочие полезные функции PHP-MySQL
    Освобождение ресурсов
    Создание и удаление баз данных
  Другие интерфейсы РНР-баз данных

Глава 11. Дополнительные возможности MySQL
  Детальное описание системы привилегий
    Таблица user
    Таблицы db и host
    Таблицы tables_priv и columns_priv
    Управление доступом: как MySQL использует таблицы привилегий
    Обновление привилегий: когда изменения вступают в силу?
  Обеспечение безопасности баз данных MySQL
    MySQL с точки зрения операционной системы
    Пароли
    Привилегии пользователей
    Тонкости Web
  Получение дополнительной информации о базах данных
    Получение информации с помощью SHOW
    Получение информации о столбцах с помощью DESCRIBE
    Как запросы работают с EXPLAIN
  Ускорение использования базы данных при помощи индексов
  Советы по оптимизации
    Оптимизация проектирования
    Права доступа
    Оптимизация таблиц
    Применение индексов
    Использование значений, принятых по умолчанию
    Применяйте постоянные соединения
    Другие советы
  Различные типы таблиц
  Загрузка данных из файла

Часть 3. Системы электронной торговли и безопасность

Глава 12. Эксплуатация сайта электронной коммерции
  Преследуемые цели
  Типы коммерческих Web-сайтов
    Сетевые брошюры
    Прием заказов на товары и услуги
    Предоставление услуг и цифровой продукции
    Дополнительные товары и услуги
    Снижение расходов
  Риски и угрозы
    Взломщики
    Невозможность привлечения компаньонов
    Отказы оборудования
    Сбои питания, коммуникационных линий или сети,
    отказы службы доставки
    Интенсивная конкуренция
    Сбои программного обеспечения
    Изменения в политике и налогообложении
    Ограниченная пропускная способность системы

Глава 13. Вопросы безопасности в электронной коммерции
  Насколько важна ваша информация?
  Угрозы безопасности
    Вскрытие конфиденциальных данных
    Потеря или разрушение данных
    Изменение данных
    Отказ в обслуживании
    Ошибки программного обеспечения
    Отказ от обязательств
  Достижение баланса между практичностью, производительностью,
  стоимостью и защитой
  Разработка стратегии защиты
  Принципы аутентификации
  Использование аутентификации
  Основы шифрования
  Шифрование с закрытым ключом
  Шифрование с открытым ключом
  Цифровые подписи
  Цифровые сертификаты
  Безопасные Web-серверы
  Аудит и регистрация
  Брандмауэры
  Резервное копирование данных
    Резервное копирование общих файлов
    Резервное копирование и восстановление баз данных MySQL
  Физическая безопасность

Глава 14. Аутентификация с помощью РНР и MySQL
  Идентификация пользователей
  Реализация контроля доступа
    Хранение паролей
    Шифрование паролей
    Защита множества страниц
  Базовая аутентификация
  Использование базовой аутентификации в РНР
  Использование базовой аутентификации при помощи файлов
  htaccess сервера Apache
  Использование базовой аутентификации в IIS
  Использование аутентификации через модуль mod_auth mysql
    Установка модуля mod_auth_mysql
    Заработало?
    Использование модуля mod_auth_mysql
  Создание собственного метода аутентификации

Глава 15. Реализация безопасных транзакций в РНР и MySQL
  Обеспечение безопасности транзакций
    Пользовательская машина
    Internet
    Ваша система
  Использование слоя безопасных сокетов
    Проверка данных, вводимых пользователем
  Обеспечение безопасного хранения данных
  Зачем хранить номера кредитных карточек?
  Использование шифрования в РНР
    Инсталляция GPG
    Тестирование GPG

Часть 4. Усложненные технологии применения РНР
Глава 16. Взаимодействие с файловой системой и сервером
  Основы загрузки 'файлов на сервер
    HTML-код загрузки файлов на сервер
    Реализация РНР-кода для работы с файлом
    Часто возникающие затруднения
  Использование функций работы с каталогами
    Считывание из каталогов
    Получение сведении о текущем каталоге
    Создание и удаление каталогов
  Взаимодействие с файловой системой
    Считывание информации из файла
    Изменение свойств файла
    Создание, перемещение и удаление файлов
  Функции запуска программ
  Взаимодействие со средой: getenv() и putenv()

Глава 17. Использование функций работы с сетью и протоколами
  Обзор доступных протоколов
  Отправка и получение почты
  Использование других Web-служб через NTTP
  Применение функций сетевого поиска
  Использование FTP
    Использование FTP для создания резервной или
    зеркальной копии файла
    Загрузка файлов на сервер
    Как избежать тайм-аутов
    Другие функции работы с FTP
    Использование общих сетевых соединений с помощью библиотеки cURL

Глава 18. Управление датой и временем
  Получение даты и времени средствами РНР
    Использование функции date()
    Работа с метками времени UNIX
    Использование функции getdate()
    Проверка правильности дат
  Преобразования даты в форматах РНР и MySQL
  Операции над датами
  Использование календарных функций

Глава 19. Создание изображений
  Настройка поддержки изображений в РНР
  Форматы изображений
    JPEG
    PNG
    WBMP
    GIF
  Создание изображений
    Создание холста
    Рисование или вывод текста в изображение
    Вывод окончательного рисунка
    Освобождение ресурсов
  Использование автоматически создаваемых изображений
  на других страницах
  Использование текста и шрифтов при создании изображений
    Настройка холста
    Подбор размера текста на кнопке
    Позиционирование текста
    Вывод текста на кнопку
    Заключительные действия
  Рисование фигур и построение графиков
  Другие функции обработки изображений

Глава 20. Управление сеансами в РНР
  Что такое управление сеансом
  Основные функциональные средства управления сеансом
    Что такое cookie-набор?
    Установка cookie-наборов из РНР
    Использование cookie-наборов в сеансах
    Сохранение идентификатора сеанса
  Реализация управления простым сеансом
    Запуск сеанса
    Регистрация переменных сеанса
    Использование переменных сеанса
    Отмена регистрации переменных и завершение сеанса
  Пример простого сеанса
  Конфигурирование управления сеанса
  Выполнение аутентификации пользователей средствами
  управления сеансом

Глава 21. Другие полезные свойства РНР
  Использование магических кавычек
  Выполнение команд, содержащихся в строке, - функция eval()
  Прерывание выполнения: die и exit
  Сериализация
  Получение информации о рабочей среде РНР
    Определение загруженных расширений
    Определение владельца сценария
    Определение даты последнего изменения сценария
  Динамическая загрузка расширений
  Временное изменение среды исполнения
  Выделение элементов исходного кода.

Часть 5. Разработка практических приложений на РНР и MySQL

Глава 22. Применение РНР и MySQL при разработке крупных проектов
  Применение методов проектирования программного
  обеспечения при разработке Web-приложений
  Планирование и сопровождение проекта Web-приложения
  Повторное использование кода
  Написание удобного для сопровождения кода
    Стандарты написания кода
    фрагментирование кода
    Использование стандартной структуры каталогов
    Документирование и распределение функций
    собственной разработки
  Управление версиями
  Выбор среды разработки
  Документирование проектов
  Создание прототипов
  Разделение логики и содержимого
  Оптимизация кода
    Использование простой оптимизации
    Использование продуктов компании Zend
  Тестирование
  Дополнительная информация
  Что дальше

Глава 23. Отладка
  Программные ошибки
    Синтаксические ошибки
    Ошибки времени выполнения
    Логические ошибки
  Вспомогательное средство отладки переменных
  Уровни сообщений об ошибках
  Изменение настроек сообщений об ошибках
  Генерация собственных ошибок
  Эффективная обработка ошибок
  Удаленная отладка

Глава 24. Аутентификация и персонализация пользователей
  Задача
  Компоненты решения
    Идентификация и персонализация пользователей
    Хранение закладок
    Рекомендация закладок
  Обзор проекта
  Реализация базы данных
  Реализация основы сайта
  Аутентификация пользователей
    Регистрация
    Вход в систему
    Выход из системы
    Смена паролей
    Переустановка забытых паролей
  Хранение и извлечение закладок
    Добавление закладок
    Отображение закладок
    Удаление закладок
  Выработка рекомендаций
  Заключение и возможные расширения

Глава 25. Создание покупательской тележки
  Задача
  Компоненты решения
    Построение интерактивного каталога
    Отслеживание выбираемого товара
    Платежи
    Интерфейс администрирования
  Обзор решения
  Реализация базы данных
  Реализация интерактивного каталога
    Список категорий
    Список книг в категории
    Отображение информации о книгах
  Реализация покупательской тележки
    Использование сценария show_cart.php
    Просмотр содержимого тележки
    Добавление элементов в тележку
    Сохранение изменений содержимого тележки
    Печать итоговых данных в строке заголовка
    Выполнение расчета
  Реализация платежа
  Реализация интерфейса администрирования
  Расширение проекта
  Использование существующей системы

Глава 26. Построение системы управления содержимым
  Задача
  Требования к проекту
  Редактирование содержимого
    Ввод содержимого в систему
    FTP
    Преимущество баз данных перед файлами для хранения содержимого
    Структура документов
  Использование метаданных
  Форматирование вывода
  Управление изображениями
  Обзор проекта
  Создание базы данных
  Реализация
    Интерфейсная часть
    Прикладная часть
    Поиск статей
    Окно редактора
    Расширение проекта

Глава 27. Построение почтовой службы, основанной на Web
  Задача
  Компоненты решения
  Обзор проекта
  Создание базы данных
  Архитектура сценария
  Вход и выход из системы
  Создание учетных записей
    Создание новой учетной записи
    Изменение существующей учетной записи
    Удаление учетной записи
  Чтение почтовых сообщений
    Выбор учетной записи
    Просмотр содержимого почтового ящика
    Чтение почтовых сообщений
    Просмотр заголовков сообщений
    Удаление почтовых сообщений
  Отправка почты
    Отправка нового сообщения
    Ответ на сообщение или его переадресация
  Расширение проекта

Глава 28. Создание менеджера списков рассылки
  Задача
  Компоненты решения
    Определение базы данных списков и подписчиков
  Загрузка файлов
  Отправка сообщений электронной почты с присоединениями
  Обзор решения
  Создание базы данных
  Архитектура сценария
  Реализация регистрации
    Создание новой учетной записи
    Регистрация
  Реализация функций пользователя
    Просмотр списков рассылки
    Просмотр сведений о списке рассылки
    Просмотр архивов списков рассылки
    Подписка и отмена подписки
    Изменение параметров настройки учетной записи
    Изменение паролей
    Выход из системы
  Реализация функций администратора
    Создание нового списка рассылки
    Загрузка нового информационного бюллетеня
    Выполнение загрузки нескольких файлов
    Предварительный просмотр информационного бюллетеня
    Отправка сообщения
  Расширение проекта

Глава 29. Создание Web-форумов
  Компоненты решения
  Обзор решения
  Разработка базы данных
  Просмотр дерева статей
    Раскрытие и свертывание
    Отображение статей
    Использование класса treenode
  Просмотр отдельных статей
  Добавление новых статей
  Расширение проекта
  Использование существующих систем

Глава 30. Генерация персонифицированных документов в
             формате переносимых документов (PDF)
  Задача
  Оценка форматов документов
    Бумажный документ
    ASCII
    HTML
    Форматы текстовых процессоров
    Расширенный текстовый формат
    PostScript
    Переносимый формат документов
  Компоненты решения
    Система вопросов и ответов
    Программное обеспечение для генерации документов
  Обзор решения
    Задание вопросов
    Оценка ответов
    Генерация RTF-сертификата
    Генерация PDF-сертификата из шаблона
    Генерация PDF-документа с использованием PDFlib
    Сценарий Hello World для PDFlib
    Генерация сертификата с помощью PDFlib
  Проблемы, связанные с заголовками
  Расширение проекта

Часть 6. Приложения

Приложение А. Инсталляция РНР 4 и MySQL
  Запуск РНР в качестве интерпретатора CGI или модуля
  Установка Apache, РНР и MySQL под UNIX
    Apache и mod_SSL
    Фрагменты файла httpd.conf
    Работает ли поддержка РНР?
    Работает ли SSL?
  Установка Apache, РНР и MySQL под Windows
    Установка MySQL под Windows
    Установка Apache под Windows
    Различия между версиями Apache для Windows и UNIX
    Установка РНР под Windows
    Заметки по инсталляции для Microsoft US
    Замечания по инсталляции для Microsoft FWS
  Другие конфигурации

Приложение В. Ресурсы Internet
  Ресурсы, посвященные РНР
  Ресурсы, посвященные MySQL и SQL
  Ресурсы, посвященные Apache
  Разработка для Web

Предметный указатель

Начало
Краткое содержание
Введение
Структура книги
Об авторах
Компакт-диск
Заказать книгу в магазине "Мистраль"

 

Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...