Главная » 2014»Август»12 » PHP 5/6 и MySQL 6. Разработка Web-приложений. 2-е изд.
09:53
PHP 5/6 и MySQL 6. Разработка Web-приложений. 2-е изд.
PHP 5/6 и MySQL 6. Разработка Web-приложений. 2-е изд. - На практических примерах описана разработка Web-приложений на языке PHP версий 5 и 6. Большая часть кода примеров совместима с обеими версиями PHP, но особое внимание уделено новым функциям PHP 6. Даны начала программирования на PHP: установка и настройка PHP и MySQL, выбор редактора PHP-кода, основы синтаксиса и самые полезные функции PHP. Рассмотрено создание собственного движка сайта и ряда дополнительных модулей — фотогалереи, RSS-граббера, модуля для работы с MP3, модуля продажи недвижимости, гостевой книги, а также применение мощного шаблонизатора Smarty и создание простейшего собственного шаблонизатора. В качестве хранилища данных использованы два сервера — самая современная версия MySQL 6 и "суперлегкий" сервер баз данных SQLite. Показано, как с помощью технологии Ajax добиться обновления данных на странице без ее перезагрузки. Во втором издании описаны новые инструменты для создания сложных проектов PEAR, CVS и PHPUnit.
Название: PHP 5/6 и MySQL 6. Разработка Web-приложений. 2-е изд. Автор: Колисниченко Д. Н. Издательство: БХВ-Петербург Год: 2010 Страниц: 560 Формат: PDF Размер: 10,9 МБ ISBN: 978-5-9775-0581-9 Качество: Отличное Серия или Выпуск: Профессиональное программирование Язык: Русский
Содержание:
Введение Что нового во 2-м издании Немного истории PHP 6 MySQL Поддержка читателей Часть I. Теория Раздел 1. Быстрый старт Глава 1. Установка необходимого программного обеспечения 1.1. Нужно ли устанавливать программное обеспечение 1.2. Выбор PHP-редактора и FTP-клиента 1.3. Установка Apache + PHP + MySQL в Windows 1.4. Установка Apache + PHP + MySQL в Linux 1.5. Несколько советов Глава 2. Первая php-программа 2.1. Ваша первая программа 2.2. Запуск PHP-программы 2.3. Вывод текста без echo Глава 3. Основы синтаксиса PHP 3.1. Переменные 3.1.1. Правила объявления переменных. Имена переменных 3.1.2. Типы данных переменных 3.1.3. Булевы переменные 3.1.4. Операции над переменными 3.1.5. Ссылки 3.2. Константы 3.3. Выражения и операции 3.3.1. Что такое выражение 3.3.2. Арифметические операции 3.3.3. Логические выражения 3.3.4. Приоритеты операций 3.3.5. Операторы эквивалентности == и === 3.3.6. Операции со строками 3.4. Условный оператор 3.5. Циклы 3.5.1. Цикл со счетчиком 3.5.2. Цикл while 3.5.3. Цикл do-while 3.5.4. Принудительное завершение цикла и пропуск итерации 3.6. Оператор выбора switch-case Раздел 2. Передача параметров PHP-программам Глава 4. Методы GET и POST 4.1. Интерфейс CGI 4.2. Метод GET 4.3. Метод POST Глава 5. Протокол HTTP и интерфейс CGI 5.1. Специальные переменные окружения CGI 5.2. Заголовки протокола HTTP 5.3. Коды ответов протокола HTTP Глава 6. Передача параметров посредством HTML-формы 6.1. Создание простейшей формы и ее обработка в сценарии 6.2. Создание пользовательского интерфейса с помощью формы 6.2.1. Ввод текста. Теги INPUT и TEXTAREA 6.2.2. Зависимые и независимые переключатели 6.2.3. Списки выбора 6.2.4. Форма для передачи файлов 6.2.5. Кнопки 6.3. Проверка параметров формы 6.3.1. Проверка корректности e-mail 6.3.2. Проверка правильности номера кредитной карты 6.3.3. Удаление лишних пробелов Глава 7. Запоминание параметров с помощью Cookies и сессий 7.1. Что такое Cookies и как с ними работать 7.2. Механизм сессий 7.2.1. Сессии и Cookies: преимущества и недостатки 7.2.2. Для чего нужны сессии 7.2.3. Как работает механизм сессий 7.2.4. Обход Cookies 7.3. Массивы и Cookies Глава 8. Отдельное слово о директиве register_globals 8.1. Почему опасно использовать register_globals 8.2. Если register_globals отключена 8.3. PHP 6 и register_globals Раздел 3. Массивы и списки Глава 9. Основные операции над массивами и списками 9.1. Массив и список. Цикл foreach 9.2. Функции list() и array() 9.3. Удаление массива 9.4. Слияние массивов 9.5. Функция print_r() Глава 10. Функции сортировки массивов 10.1. Функции для сортировки массивов 10.2. Функция sort() - сортировка списка 10.3. Функция asort() - сортировка массива по значениям 10.4. Функция ksort() - сортировка по ключам 10.5. Функции array_reverse() и shuffle() 10.6. Собственная функция сортировки Глава 11. Особые операции над массивами 11.1. Добавление и удаление элементов массива 11.2. Упаковка переменных в массив и их извлечение 11.3. Получение части массива Раздел 4. Функции в PHP Глава 12. Полезные стандартные функции 12.1. Генератор случайных чисел 12.2. Дата и время 12.2.1. Кратко о timestamp 12.2.2. Функции strtotime() и checkdate() 12.2.3. Вывод даты 12.3. Математические функции Глава 13. Функции для работы со строками 13.1. Основные строковые функции 13.2. Специальные функции замены 13.3. Преобразование строки 13.4. Функции преобразования кодировок 13.5. Функции для работы с отдельными символами строки 13.6. Функция md5() 13.7. Функция explode(): выделение подстрок Глава 14. Работаем с файлами и каталогами 14.1. Права доступа в UNIX 14.2. Чтение файла 14.2.1. Использование функций fopen() и fread() 14.2.2. Использование функции file(): построчное чтение файла 14.2.3. Чтение всего файла: функция file_get_contents() 14.3. Запись файла 14.4. Создание временных файлов 14.5. Работа с CSV-файлами 14.6. Специальные функции для работы с файлами 14.6.1. Функции для работы с именами файлов 14.6.2. Работа с правами доступа 14.6.3. Копирование, переименование и удаление файлов 14.6.4. Время доступа к файлу 14.6.5. Другие полезные функции 14.7. Совместный доступ к файлу 14.8. Функции для работы с каталогами Глава 15. Вывод графических изображений средствами PHP 15.1. Библиотека GD 15.1.1. Получение информации об изображении 15.1.2. Конвертирование графических форматов 15.1.3. Вывод текста поверх картинки 15.1.4. Прозрачность 15.2. Изменение размера изображения 15.3. Создание водяных знаков Глава 16. Работа с сетевыми сокетами в PHP. Сетевые функции 16.1. Еще раз о том, что такое сокет 16.2. Использование сокетов 16.3. Пример использования сокетов 16.4. Блокирующий и неблокирующий режимы сокета 16.5. DNS-функции Глава 17. Собственные функции 17.1. Зачем нужны собственные функции 17.2. Особенности функций в PHP 17.3. Объявление функции 17.4. Области видимости функции 17.5. Вложенность функций 17.6. Переменное число аргументов 17.7. Передача массивов в качестве параметров Раздел 5. Серверы баз данных MySQL 6 и SQLite Глава 18. Основы SQL 18.1. Немного истории 18.2. Преимущества SQL 18.3. Как выглядят запросы 18.4. Что такое база данных 18.5. Создание таблиц 18.6. Добавление записей в таблицу 18.7. Обновление записей 18.8. Выборка записей 18.9. Удаление записей 18.10. Встроенные функции 18.11. Группировка записей. Сложные запросы Глава 19. Функции для работы с MySQL 19.1. Подключение к серверу MySQL 19.2. Несколько MySQL-соединений 19.3. Передача запросов серверу 19.4. Работа с базой данных. Создание базы данных 19.5. Функция mysql_real_escape_string ($content) Глава 20. Альтернативная база данных SQLite 20.1. MySQL vs SQLite: что лучше 20.2. Открытие базы данных 20.3. Передача запросов 20.4. Работа с результатом запроса 20.5. Список PHP-функций для работы с SQLite Глава 21. Полезные приемы при работе с MySQL 6 21.1. Выбор кодировки 21.2. Сортировка: вывод новинок. Вывод случайных записей 21.3. Постраничный вывод таблицы Раздел 6. Инструменты для создания сложных проектов Глава 22. Разработка собственного шаблонизатора 22.1. Организация файлов и каталогов проекта 22.2. Выносим параметры в отдельный файл 22.3. Подключение дополнительных файлов 22.3.1. Инструкции include и require 22.3.2. Альтернативный способ подключения сценариев 22.3.3. Инструкции include_once и require_once 22.4. Шаблоны Глава 23. Шаблонизатор Smarty 23.1. Что такое Smarty 23.2. Установка Smarty 23.3. Создание setup.php 23.4. Разработка шаблонов Smarty 23.4.1. Комментарии в шаблонах 23.4.2. Переменные в Smarty 23.4.3. Файлы конфигурации шаблонов 23.4.4. Служебная переменная {$smarty} 23.4.5. Модификаторы переменных 23.4.6. Стандартные (встроенные) функции Smarty Функции {include} и {insert} Функция {foreach} Функции {if}, {elseif}, {else} Функция {capture} Функция {php} Функция {strip} 23.4.7. Пользовательские функции Smarty Функция {assign} Функция {cycle} Функция {fetch} Функции {html_checkboxes} и {html_radios} Функция {html_image} Функция {html_select_date} Функция {html_select_time} Функция {html_table} 23.5. Smarty для программиста 23.5.1. Специальные переменные 23.5.2. Полезные методы класса Smarty Глава 24. Объектно-ориентированное программирование 24.1. Основы ООП 24.2. Классы и объекты 24.3. Конструкторы и деструкторы класса 24.4. Наследование классов. Полиморфизм 24.5. Новые возможности PHP 5/6 24.5.1. Область видимости членов класса 24.5.2. Абстрактные классы и методы 24.5.3. Служебное слово final 24.5.4. Клонирование объектов 24.5.5. Обработка исключительных ситуаций 24.5.6. Константы-члены класса 24.5.7. Статические члены класса 24.5.8. Оператор instanceof 24.5.9. Итераторы 24.5.10. Пространства имен Глава 25. Механизм сессий 25.1. Для чего нужны сессии 25.2. Как работает механизм сессий 25.3. Обход Cookies 25.4. Сценарий аутентификации Глава 26. Введение в PEAR 26.1. Серьезные проекты и PEAR 26.2. Пример использования класса DB Глава 27. Контроль версий 27.1. Выбор системы контроля версий 27.2. Практическое использование TortoiseHG (Mercurial) 27.3. Просмотр внесенных изменений Глава 28. Тестирование PHP-сценариев 28.1. Программа работает, но не так, как нам нужно 28.2. «Самодельные» точки останова 28.3. Система автоматического тестирования 28.4. Директива error_reporting Часть II. Практика Раздел 7. Разработка основных элементов сайта Глава 29. Загрузка файлов на сервер 29.1. Что нужно знать о загрузке файлов на сервер 29.2. Реализация загрузки файла 29.3. Загрузка нескольких файлов 29.4. Проблемы при загрузке файлов Глава 30. Использование FTP-функций 30.1. Функции для работы с FTP 30.2. Примеры использования FTP-функций Глава 31. Отправка и прием почты 31.1. Отправка почты средствами PHP - функция mail() 31.2. Отправка писем с вложениями - класс HtmlMimeMail 31.2.1. Отправка сообщения 31.2.2. Проблемы при отправке сообщения 31.2.3. MIME-типы 31.3. Получение писем по протоколу POP3 Глава 32. Работа с RSS: получаем новости на сайт 32.1. Краткие сведения о RSS 32.2. Формат RSS-файла 32.3. Написание сценария импорта новостей 32.4. Подключение файла import.php к сайту 32.5. Создание граббера новостей Глава 33. Поиск с использованием регулярных выражений 33.1. Нужно что-то найти 33.2. Язык регулярных выражений RegEx 33.3. Управляющие конструкции 33.3.1. Квантификаторы 33.3.2. Альтернативный оператор | 33.3.3. Скобки 33.4. Псевдосимволы 33.5. Практическое использование RegEx-функций Глава 34. Работаем с MP3 34.1. Формат MP3 34.2. Библиотека PEAR 34.3. Вывод ID3-тегов 34.4. Редактирование ID3-тегов 34.5. Удаление тега Глава 35. Технология Ajax 35.1. Что такое Ajax 35.2. Ваше первое Ajax-приложение Раздел 8. Обеспечение безопасности сайта Глава 36. Создание простейшего движка сайта 36.1. Планирование движка 36.1.1. Зачем нужно разрабатывать собственный движок 36.1.2. Необходимые нам функции движка 36.1.3. «Принципиальная схема» движка 36.2. Основные функции движка 36.2.1. Разработка TPL-шаблона 36.2.2. Файл настроек 36.2.3. Основной файл CMS - index.php 36.2.4. Проектирование базы данных Таблица static Таблица cats Таблица pages 36.2.5. Иерархическая структура сайта Алгоритм работы меню Сценарий menu.php Вывод содержимого раздела и страницы 36.3. Дополнительные функции движка 36.3.1. Вывод информации из таблицы static 36.3.2. Функция вывода содержимого HTML-файла 36.3.3. Версия для печати 36.4. Где взять листинги этой главы Глава 37. Создание фотогалереи 37.1. Постановка задачи 37.2. Загрузка изображений на сервер 37.3. Вывод галереи Глава 38. Гостевая книга 38.1. Пережиток прошлого? 38.2. Разработка базы данных и структура гостевой книги 38.3. Вывод гостевой книги 38.4. Добавление записей в гостевую книгу 38.5. Сервисный сценарий gb_service.php Глава 39. Интеграция галереи LiveJournal и вашего сайта 39.1. Что такое Живой журнал 39.2. Интеграция фотогалереи LiveJournal и сайта 39.3. Настройка внешнего вида галереи Глава 40. Создание счетчика сайта 40.1. Постановка задачи 40.2. Файл конфигурации 40.3. Разработка таблиц counter и ipaddr 40.4. Сценарий counter.php 40.5. Сценарий reset_counter.php Глава 41. Статистика сайта 41.1. Методы сбора статистики 41.2. Программы-анализаторы журналов Web-сервера 41.3. Системы статистики Глава 42. Голосования (опросы) 42.1. Разработка собственной системы голосования 42.2. Разработка сценария poll_form.php 42.3. Сценарий poll_process.php 42.4. Сценарий poll_results.php Раздел 9. Сложный проект: сайт по продаже недвижимости Глава 43. Постановка задачи 43.1. Функции будущего проекта 43.2. Разработка базы данных Глава 44. Разработка основной части сайта 44.1. С чего начать 44.2. Реализация основных функций системы 44.2.1. Аутентификация пользователей 44.2.2. Вывод VIP-объявлений 44.2.3. Вывод объявлений об услугах 44.2.4. Вывод рекламных баннеров 44.2.5. Постраничный вывод объявлений 44.3. На что обратить внимание Глава 45. Разработка панели администрирования 45.1. Функции панели управления 45.2. Управление VIP-объявлениями 45.3. Массовая отправка электронного сообщения 45.4. Общие операции с базой данных 45.5. Редактирование статей, новостей и контактов Раздел 10. Обеспечение безопасности сайта Глава 46. SSL-соединения 46.1. Защищаем передаваемые данные 46.2. Настройка SSL в DirectAdmin 46.3. SSL-переменные Глава 47. Защита PHP с помощью конфигурационного файла 47.1. Конфигурационный файл php.ini 47.2. Отключение потенциально опасных функций 47.3. Рекомендованные значения некоторых конфигурационных директив Глава 48. Защита сайта от атак 48.1. Сайт в опасности 48.2. Два самых распространенных метода взлома 48.3. Межсайтовый скриптинг 48.4. SQL-инъекции 48.5. Флуд 48.6. Защита форума PHPBB2 от спаммеров Приложение. Описание CD Предметный указатель