Skip to content Skip to sidebar Skip to footer

Скачать Php Авторизация

Простая Авторизация в PHP: Руководство и Пример

Авторизация пользователей — это ключевой элемент любого веб-приложения, обеспечивающий безопасный доступ к ресурсам. В этом руководстве мы рассмотрим простую систему авторизации на PHP с использованием базы данных MySQL.

Начальная настройка

Для начала создадим базу данных и таблицу пользователей:

«`sql
CREATE DATABASE auth_example;
USE auth_example;

CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
password VARCHAR(255) NOT NULL
);
«`

Добавим тестового пользователя с хэшированным паролем:

«`php
$hashed_password = password_hash(‘password123’, PASSWORD_DEFAULT);

INSERT INTO users (username, password) VALUES (‘testuser’, ‘$hashed_password’);
«`

Форма входа

Создадим HTML-форму для ввода логина и пароля:

«`html




Вход






«`

Обработка входа

Создадим файл `login.php` для обработки данных формы:

«`php
session_start();

if ($_SERVER[‘REQUEST_METHOD’] === ‘POST’) {
$username = $_POST[‘username’];
$password = $_POST[‘password’];

// Подключение к базе данных
$pdo = new PDO(‘mysql:host=localhost;dbname=auth_example’, ‘root’, »);

// Запрос пользователя из базы данных
$stmt = $pdo->prepare(‘SELECT * FROM users WHERE username = :username’);
$stmt->execute([‘:username’ => $username]);
$user = $stmt->fetch(PDO::FETCH_ASSOC);

if ($user && password_verify($password, $user[‘password’])) {
// Установка сессии
$_SESSION[‘user_id’] = $user[‘id’];
echo ‘Вы успешно вошли!’;
} else {
echo ‘Неверный логин или пароль.’;
}
}
?>
«`

Защита страниц

Чтобы защитить доступ к определенным страницам, создадим файл `auth.php`:

«`php
session_start();

if (!isset($_SESSION[‘user_id’])) {
header(‘Location: login.php’);
exit;
}
?>
«`

Теперь включаем `auth.php` в начало любой защищенной страницы:

«`php





Защищённая страница

Добро пожаловать, пользователь!



«`

Выход из системы

Создадим файл `logout.php` для завершения сессии:

«`php
session_start();
session_destroy();
header(‘Location: login.php’);
exit;
?>
«`

Заключение

Эта простая авторизация в PHP демонстрирует основные шаги по созданию системы управления доступом. Используя хэширование паролей и сессии, мы обеспечиваем безопасность данных пользователей. Для более сложных приложений рекомендуется использовать фреймворки и библиотеки, такие как Laravel или Symfony, которые предоставляют готовые решения для управления аутентификацией.

© KiberSec.ru – 07.04.2025, обновлено 07.04.2025
Перепечатка материалов сайта возможна только с разрешения администрации KiberSec.ru.