Административная сторона сайта. CRUD

Введение Для реализации административной части, нужно реализовать несколько логических идей: роли пользователей, возможность авторизации, просмотр и управление состоянием таблиц БД, заливка файлов, возможно некоторая статистика, возможность редактировать html файлы, изменение общих настроек сайта. К общим …

Продолжить чтение

Формы авторизации и регистрации

Аутентификация Представим интернет-магазин. Все его страницы можно разделить на две половины: публичные и приватные. К публичным относятся страницы каталога, информации о товаре, условия доставки и так далее. К приватным — корзина покупок, история заказов. Совершенно очевидно, что корзина покупок у каждого покупателя должна …

Продолжить чтение

PHP сессии

Введение Мы уже умеем сохранять информацию для пользователя между посещениями страницы с помощью кук. Но зачем нам ещё и сессии? Сессии, они же сеансы, это, по сути, просто удобная обёртка над куками. Они также позволяют хранить данные пользователя, но с некоторыми отличиями. Доступный объём для …

Продолжить чтение

Работа с cookie

Введение Часто сайты должны уметь идентифицировать своих посетителей, чтобы сохранять и показывать им позже какую-либо информацию. Например, интернет-магазины могут сохранять историю просмотров, чтобы рекомендовать потенциальным покупателям наиболее подходящие им товары. Или агрегатор новостей мог бы предложить пользователям выбирать только …

Продолжить чтение

PDO

Введение PDO – PHP Data Objects – это прослойка, которая предлагает универсальный способ работы с несколькими базами данных. Этот класс, сокращенно именуемый PDO, предоставляет методы для работы с объектами и prepared statements, которые заметно повысят вашу …

Продолжить чтение

Защита от sql-инъекций

Внедрение SQL-кода (SQL инъекция) — один из распространённых способов взлома сайтов, работающих с базами данных. Способ основан на внедрении в запрос произвольного SQL-кода. Внедрение SQL позволяет хакеру выполнить произвольный запрос к базе данных (прочитать содержимое любых таблиц, удалить, изменить или добавить …

Продолжить чтение

Работа с Базами данных в php.

PHP поддерживает работу с базой данных MySQL. Специальные встроенные функции для работы с MySQL позволяют просто и эффективно работать с этой СУБД: выполнять любые запросы, читать и записывать данные, обрабатывать ошибки. Сценарий, который подключается к БД, выполняет запрос и показывает результат, будет …

Продолжить чтение

Получение данных. GET, POST

GET Если есть внешние переменные, то как их прочитать? Когда мы вводим в адресную строку браузера некий адрес и нажимаем на оправку, то серверу отправляется запрос типа GET. В PHP по умолчанию определен глобальный ассоциативный массив $_GET, который хранит …

Продолжить чтение

Протокол HTTP

HTTP взаимодействие Программировать на PHP можно и без знания протокола HTTP. Но для решения ряда задач нужно знать, как именно работает веб-сервер. Ведь PHP — это в первую очередь серверный язык программирования. Протокол HTTP очень прост и состоит из двух частей: И клиент, …

Продолжить чтение

Замыкания. Стрелочные функции

Замыкания Замыкания в PHP представляют анонимную функцию, которая может использовать переменные из своего локального окружения. В отличие от обычных анонимных функций замыкания в PHP применяют выражение use. Вначале рассмотрим анонимную функцию, которая пытается использовать некоторую внешнюю …

Продолжить чтение