دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: [5-е изд.] نویسندگان: Люк Веллинг. Лора Томсон , перевод с английского Ю. Н. Артеменко سری: ISBN (شابک) : 9785990891197 ناشر: Диалектика سال نشر: 2017 تعداد صفحات: 768 с. [770] زبان: Russian فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 62 Mb
در صورت تبدیل فایل کتاب Разработка веб-приложений с помощью PHP и MySQL: рассмотрен PHP 7 به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب توسعه برنامه های کاربردی وب با PHP و MySQL: PHP 7 بررسی شد نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Содержание Введение Почему вы должны читать эту книгу? Что вы узнаете из этой книги? Что такое РНР? Что такое MySQL? Почему используются РНР и MySQL? Некоторые достоинства РНР Производительность Масштабируемость Интеграция с базами данных Встроенные библиотеки Стоимость Легкость изучения РНР Поддержка объектно-ориентированного подхода Переносимость Гибкость подхода к разработке Исходный код Доступность поддержки и документации Основные возможности РНР 7 Некоторые достоинства MySQL Производительность Низкая стоимость Легкость использования Переносимость Исходный код Доступность поддержки Что нового в MySQL (5.x)? Как организована эта книга? Заключение Часть I. Использование РНР Глава 1. Ускоренный курс по РНР Предварительное условие: доступ к РНР Пример приложения: “Автозапчасти от Вовки” Создание формы заказа Обработка формы Встраивание РНР в HTML Дескрипторы РНР Операторы РНР Пробельные символы Комментарии Добавление динамического содержимого Вызов функций Использование функции date () Доступ к переменным формы Переменные формы Конкатенация строк Переменные и литералы Идентификаторы Типы переменных Типы данных РНР Прочность типов Приведение типов Переменные переменных Объявление и использование констант Области видимости переменных Использование операций Арифметические операции Строковые операции Операции присваивания Операции сравнения Логические операции Поразрядные операции Прочие операции Вычисление итоговых сумм для формы Приоритет и ассоциативность Использование функций для обработки переменных Проверка и установка типов переменных Проверка состояния переменных Повторная интерпретация переменных Принятие решений с помощью условных структур Операторы if Блоки кода Операторы else Операторы еlsеif Операторы switch Сравнение разных условных конструкций Повторение действий с помощью итераций Циклы while Циклы for и foreach Циклы do... while Выход из управляющей структуры или сценария Использование альтернативного синтаксиса управляющих структур Использование declare Что дальше Глава 2. Хранение и извлечение данных Сохранение данных для более позднего использования Сохранение и извлечение заказов в компании “Автозапчасти от Вовки” Обработка файлов Открытие файла Выбор режима файла Использование f open () для открытия файла Открытие файлов через FTP или HTTP Решение проблем при открытии файлов Запись в файл Параметры функции fwrite () Форматы файлов Закрытие файла Чтение из файла Открытие файла для чтения: f open () Выяснение, когда останавливать чтение: f eof () Построчное чтение: fgets(), fgetss () и fgetcsv() Чтение файла целиком: readfile (), fpassthru (), file () и file_get_contents () Чтение символа: f getc () Чтение произвольного количества байтов: f read () Использование других файловых функций Проверка, существует ли файл: file_exist s () Определение размера файла: file size () Удаление файла: unlink () Перемещение внутри файла: rewind (), f seek () и ftell () Блокирование файлов Лучший способ: базы данных Проблемы, связанные с использованием плоских файлов Как СУРБД решают проблемы, связанные с использованием плоских файлов Дополнительные источники информации Что дальше Глава 3. Использование массивов Что такое массив Массивы с числовыми индексами Инициализация массивов с числовыми индексами Доступ к содержимому массива Использование циклов для доступа к содержимому массива Массивы с другими индексами Инициализация массива Доступ к элементам массива Использование циклов Операции для обработки массивов Многомерные массивы Сортировка массивов Использование sort () Использование asort () и ksort () для сортировки массивов Сортировка в обратном порядке Сортировка многомерных массивов Использование array multisort () Сортировка, определяемая пользователем Сортировка, определяемая пользователем, в обратном порядке Переупорядочение массивов Использование shuffle () Изменение порядка следования элементов в массивах на обратный Загрузка массивов из файлов Выполнение других манипуляций с массивами Перемещение внутри массива: each (), current (), reset (), end (), next(),pos () и prev () Применение любой функции к каждому элементу в массиве: array_walk() Подсчет элементов в массиве: count (), sizeof () и array_count_values() Преобразование массивов в скалярные переменные: extract () Дополнительные источники информации Что дальше Глава 4. Манипулирование строками и регулярные выражения Пример приложения: интеллектуальная форма отправки электронной почты Форматирование строк Усечение строк: chop (), ltrim () и trim () Форматирование строк для вывода Фильтрация строк для других форм вывода Объединение и разбиение строк с помощью строковых функций Использование explode (), implode () и j oin () Использование strtok () Использование substr () Сравнение строк Упорядочение строк: strcmp (), strcasecmp () и strnatcmp () Проверка длины строки с помощью strlen() Сопоставление и замена подстрок с помощью строковых функций Поиск строк внутри строк: strstr (), strchr (), strrchr () и stristr () Нахождение позиции подстроки: strpos () и strrpos () Замена подстрок: str_replace () и substr_replace () Введение в регулярные выражения Основы Ограничители Классы и типы символов Повторение Подвыражения Подвыражения с подсчетом Привязка к началу или концу строки Ветвление Сопоставление с буквальными специальными символами Обзор метасимволов Управляющие последовательности Обратные ссылки Утверждения Использование регулярных выражений в приложении интеллектуальной формы отправки электронной почты Поиск подстрок с помощью регулярных выражений Замена подстрок с помощью регулярных выражений Разбиение строк с помощью регулярных выражений Дополнительные источники информации Что дальше Глава 5. Повторное использование кода и написание функций Преимущества повторного использования кода Затраты Надежность Согласованность Использование require () и include () Использование require () для включения кода Использование require () для шаблонов веб-сайта Использование auto_prepend_file и auto_append_file Использование функций в РНР Вызов функций Вызов неопределенной функции Регистр символов и имена функций Определение собственных функций Базовая структура функции Назначение имени функции Параметры Область видимости Передача по ссылке и передача по значению Ключевое слово return Возвращение значений из функций Реализация рекурсии Реализация анонимных функций (или замыканий) Дополнительные источники информации Что дальше Глава 6. Объектно-ориентированная разработка с помощью РНР Концепции объектно-ориентированной разработки Классы и объекты Полиморфизм Наследование Создание классов, атрибутов и операций в РНР Структура класса Конструкторы Деструкторы Создание экземпляра класса Использование атрибутов класса Вызов операций класса Управление доступом с помощью private и public Написание функций доступа Реализация наследования в РНР Управление видимостью при наследовании с помощью private и protected Переопределение Предотвращение наследования и переопределения с помощью final Множественное наследование Реализация интерфейсов Использование трейтов Проектирование классов Написание кода класса Расширенная объектно-ориентированная функциональность в РНР Использование констант класса Реализация статических методов Проверка типа объекта и подсказка типа Позднее статическое связывание Клонирование объектов Использование абстрактных классов Перегрузка методов с помощью_с а 11 () Использование___autoload () Реализация итераторов и итерации Генераторы Преобразование классов в строки Использование API-интерфейса рефлексии Пространства имен Использование подпространств имен Глобальное пространство имен Импортирование и создание псевдонимов пространств имен Что дальше Глава 7. Обработка ошибок и исключений Концепции обработки исключений Класс Exception Исключения, определяемые пользователем Исключения в приложении “Автозапчасти от Вовки” Исключения и другие механизмы обработки ошибок РНР Дополнительные источники информации Что дальше Часть II. Использование MySQL Глава 8. Проектирование базы данных для веб-приложения Концепции реляционных баз данных Таблицы Столбцы Строки Значения Ключи Схемы Отношения Проектирование базы данных для веб-приложения Думайте о реальных объектах, которые вы моделируете Избегайте хранения избыточных данных Используйте атомарные значения столбцов Выбирайте практичные ключи Обдумайте, что вы хотите запрашивать у базы данных Избегайте проектных решений с многочисленными пустыми атрибутами Сводка по типам таблиц Архитектура баз данных для веб-приложений Дополнительные источники информации Что дальше Глава 9. Создание базы данных для веб-приложения Использование монитора MySQL Вход в систему MySQL Создание баз данных и пользователей Настройка пользователей и привилегий Введение в систему привилегий MySQL Принцип наименьшего уровня привилегий Настройка пользователей: команды CREATE USER и GRANT Типы и уровни привилегий Команда REVOKE Примеры использования GRANT и REVOKE Настройка пользователя для веб-приложения Использование правильной базы данных Создание таблиц базы данных Смысл других ключевых слов Типы столбцов Просмотр базы данных с помощью SHOW и DESCRIBE Создание индексов Идентификаторы MySQL Выбор типов данных для столбцов Числовые типы Типы даты и времени Строковые типы Дополнительные источники информации Что дальше Глава 10. Работа с базой данных MySQL Что такое SQL? Вставка данных в базу данных Извлечение из базы данных Извлечение данных по определенному критерию Извлечение данных из множества таблиц Группирование и агрегирование данных Выбор строк для возвращения Использование подзапросов Обновление записей в базе данных Изменение таблиц после создания Удаление записей из базы данных Удаление таблиц Удаление целой базы данных Дополнительные источники информации Что дальше Глава 11. Доступ к базе данных MySQL из веб-приложения с помощью РНР Как работает архитектура баз данных при доступе через Интернет Выполнение запросов к базе данных через Интернет Проверка и фильтрация входных данных Настройка подключения Выбор базы данных для использования Выполнение запроса к базе данных Использование подготовленных операторов Извлечение результатов запроса Отключение от базы данных Внесение новой информации в базу данных Использование других интерфейсов РНР для работы с базами данных Использование обобщенного интерфейса доступа к базам данных: PDO Дополнительные источники информации Что дальше Глава 12. Расширенное администрирование в MySQL Детальные исследования системы привилегий Таблица user Таблица db Таблицы tables_priv, columns_priv, procs_priv и proxies_priv Управление доступом: как MySQL использует таблицы привилегий Обновление привилегий: когда изменения вступают в силу? Защита базы данных MySQL MySQL с точки зрения операционной системы Пароли Привилегии пользователей Проблемы, связанные с веб-доступом Получение дополнительной информации о базах данных Получение информации с помощью SHOW Получение информации о столбцах с помощью DESCRIBE Выяснение, как работают запросы, с помощью EXPLAIN Оптимизация базы данных Оптимизация проектного решения Разрешения Оптимизация таблиц Использование индексов Использование стандартных значений Дополнительные советы Резервное копирование базы данных MySQL Восстановление базы данных MySQL Реализация репликации Настройка ведущего сервера Выполнение первоначальной передачи данных Создание одного или нескольких ведомых серверов Дополнительные источники информации Что дальше Глава 13. Расширенное программирование в MySQL Оператор LOAD DATA INFILE Механизмы хранения Транзакции Определения транзакций Использование транзакций в InnoDB Внешние ключи Хранимые процедуры Простой пример Локальные переменные Курсоры и управляющие структуры Триггеры Дополнительные источники информации Что дальше Часть III. Безопасность веб-приложения Глава 14. Угрозы безопасности веб-приложения Идентификация угроз, с которыми мы сталкиваемся Доступ к чувствительным данным Модификация данных Потеря или разрушение данных Отказ в обслуживании Внедрение вредоносного кода Скомпрометированный сервер Отказ от обязательств Понимание, с кем мы имеем дело Атакующие и взломщики Неосведомленные пользователи инфицированных машин Недовольные сотрудники Похищение оборудования Мы сами Дополнительные источники информации Что дальше Глава 15. Построение защищенного веб-приложения Стратегии обращения с безопасностью Принятие правильного образа мыслей Соблюдение баланса между безопасностью и удобством эксплуатации Слежение за безопасностью Наш основной подход Защита кода Фильтрация пользовательского ввода Отмена управляющих символов в выводе Организация кода Что входит в ваш код Соображения по поводу файловой системы Стабильность кода и дефекты Выполнение команд Защита веб-сервера и интерпретатора РНР Поддержание программного обеспечения в актуальном состоянии Просмотр файла php .ini Конфигурирование веб-сервера Совместный хостинг веб-приложений Безопасность сервера баз данных Пользователи и система разрешений Отправка данных серверу Подключение к серверу Запуск сервера Защита сети Брандмауэры Использование демилитаризованной зоны Подготовка к противодействию атакам DoS и DDoS Безопасность компьютера и операционной системы Поддержание операционной системы в актуальном состоянии Запуск только необходимого программного обеспечения Физическая защита сервера Разработка планов на случай аварийных ситуаций Что дальше Глава 16. Реализация методов аутентификации с помощью РНР Идентификация посетителей Реализация контроля доступа Хранение паролей Защита паролей Защита множества страниц Использование базовой аутентификации Использование базовой аутентификации в РНР Использование базовой аутентификации с помощью файлов .htaccess в Apache Реализация специальной аутентификации Дополнительные источники информации Что дальше Часть IV. Расширенные приемы в РНР Глава 17. Взаимодействие с файловой системой и сервером Загрузка файлов Создание HTML-разметки для загрузки файлов Написание сценария РНР для работы с файлом Отслеживание продвижения загрузки с помощью сеансов Избегание распространенных проблем, связанных с загрузкой Использование функций для работы с каталогами Чтение из каталогов Получение информации о текущем каталоге Создание и удаление каталогов Взаимодействие с файловой системой Получение информации о файлах Изменение свойств файла Создание, удаление и перемещение файлов Использование функций выполнения программ Взаимодействие со средой: getenv () и putenv () Дополнительные источники информации Что дальше Глава 18. Использование функций для работы с сетью и протоколами Исследование доступных протоколов Отправка и чтение электронной почты Использование данных из других веб-сайтов Использование функций просмотра сети Резервное копирование или зеркальное отображение файла Использование FTP для резервного копирования или зеркального отображения файла Выгрузка файлов Избегание тайм-аутов Использование других функций FTP Дополнительные источники информации Что дальше Глава 19. Работа с датой и временем Получение даты и времени в РНР Часовые пояса Использование функции date () Работа с отметками времени Unix Использование функции get date () Проверка допустимости дат с помощью checkdate () Форматирование отметок времени Преобразование между форматами даты РНР и MySQL Вычисления с датами в РНР Вычисления с датами в MySQL Использование микросекунд Использование календарных функций Дополнительные источники информации Что дальше Глава 20. Интернационализация и локализация Локализация — это больше, чем перевод Наборы символов Последствия для безопасности от наборов символов Использование функций РНР для работы с многобайтовыми строками Создание базовой страничной структуры, допускающей локализацию Использование gettext () в интернационализированном приложении Конфигурирование системы для использования gettext () Создание файлов перевода Реализация локализованного содержимого в РНР с использованием gettext() Дополнительные источники информации Что дальше Глава 21. Генерация изображений Настройка поддержки изображений в РНР Форматы изображений JPEG PNG GIF Создание изображений Создание холста изображения Рисование или вывод текста на изображении Вывод финальной графики Очистка ресурсов Использование автоматически генерируемых изображений на других страницах Использование текста и шрифтов для создания изображений Настройка базового холста Подгонка текста к кнопке Позиционирование текста Вывод текста на кнопке Заключительные действия Рисование фигур и построение диаграмм для данных Использование других функций работы с изображениями Что дальше Глава 22. Управление сеансами в РНР Понятие управления сеансами Базовая функциональность сеансов Понятие cookie-набора Установка cookie-наборов в коде РНР Использование cookie-наборов с сеансами Хранение идентификатора сеанса Реализация простых сеансов Начало сеанса Регистрация переменных сеанса Использование переменных сеанса Сброс переменных и уничтожение сеанса Простой пример сеанса Конфигурирование управления сеансами Реализация аутентификации с помощью механизма управления сеансами Что дальше Глава 23. Интеграция JavaScript и РНР Понятие AJAX Краткое введение в jQuery Использование jQuery в веб-приложениях Использование jQuery и AJAX в РНР Сценарий для беседы с поддержкой AJAX/сервер Методы AJAX в jQuery Клиент для беседы/приложение jQuery Дополнительные источники информации Что дальше Глава 24. Другие полезные средства Интерпретация строк: eval () Прекращение выполнения: die () и exit () Сериализация переменных и объектов Получение информации о переменных среды РНР Выяснение, какие расширения загружены Идентификация владельца сценария Выяснение, когда сценарий был модифицирован Внесение временных изменений в исполняющую среду Выделение цветом синтаксиса в исходном коде Использование РНР в командной строке Что дальше Часть V. Разработка практических проектов на РНР и MySQL Глава 25. Использование РНР и MySQL в крупных проектах Применение практик конструирования ПО к разработке веб-приложений Планирование и запуск проекта веб-приложения Многократное использование кода Написание сопровождаемого кода Стандарты написания кода Разбиение кода Использование стандартной структуры каталогов Документирование и совместное использование внутренних функций Внедрение контроля версий Выбор среды разработки Документирование проектов Прототипирование Отделение логики от содержимого Оптимизация кода Использование простых оптимизаций Тестирование Дополнительные источники информации Что дальше Глава 26. Отладка и ведение журналов Ошибки при программировании Синтаксические ошибки Ошибки времени выполнения Логические ошибки Вспомогательное средство отладки переменных Уровни выдачи сообщений об ошибках Изменение настроек выдачи сообщений об ошибках Инициирование собственных ошибок Элегантная обработка ошибок Регистрация сведений об ошибках в журнальном файле Что дальше Глава 27. Реализация аутентификации и персонализации пользователей Компоненты решения Идентификация и персонализация пользователей Хранение закладок Рекомендация закладок Обзор решения Создание базы данных Реализация базового сайта Реализация аутентификации пользователей Регистрация пользователей Вход Выход Изменение паролей Переустановка забытых паролей Реализация сохранения и извлечения закладок Добавление закладок Отображение закладок Удаление закладок Реализация выдачи рекомендаций Возможные расширения Глава 28. Построение клиента веб-почты с помощью инфраструктуры Laravel, часть I Введение в Laravel 5 Создание нового проекта Laravel Структура приложения Laravel Цикл запросов Laravel и паттерн MVC Классы моделей, представлений и контроллеров в Laravel Глава 29. Построение клиента веб-почты с помощью инфраструктуры Laravel, часть II Построение простого клиента IMAP с использованием Laravel Функции РНР для работы с IMAP Построение библиотеки IMAP для приложения Laravel Объединение всех компонентов для построения клиента веб-почты Реализация класса ImapServiceProvider Страница аутентификации клиента веб-почты Реализация главного представления Реализация представления для вывода сообщения Реализация действий удаления и отправки сообщений Заключение Глава 30. Интеграция с социальными сетями и аутентификация Аутентификация веб-служб с помощью OAuth Предоставление кода авторизации Неявное предоставление Построение веб-клиента Instagram Отметка фотографий как понравившихся в Instagram Заключение Глава 31. Построение корзины для покупок Компоненты решения Построение онлайнового каталога Отслеживание покупок пользователей во время их нахождения в магазине Реализация системы платежей Построение административного интерфейса Обзор решения Реализация базы данных Реализация онлайнового каталога Вывод списка категорий Вывод списка книг в категории Отображение сведений о книге Реализация корзины для покупок Использование сценария show cart. php Просмотр корзины Добавление книг в корзину Сохранение обновленной корзины Вывод сводки в панели заголовка Оформление заказа Реализация платежа Реализация интерфейса администрирования Расширение проекта Приложение А. Установка Apache, РНР и MySQL Установка Apache, РНР и MySQL под Unix Двоичная установка Установка из исходного кода Модификация базовой конфигурации Apache Работает ли поддержка РНР? Работает ли поддержка SSL? Установка Apache, РНР и MySQL для Windows и Mac OS X с использованием установочных пакетов “все в одном” Установка PEAR Установка РНР с другими веб-серверами Предметный указатель