Files
PHP-LDAP/controllers/auth.php

44 lines
1.3 KiB
PHP

<?php
require_once __DIR__ . '/../models/LDAPAuth.php';
class AuthController
{
private $auth_model;
public function __construct()
{
$this->auth_model = new LDAPAuth();
}
public function login()
{
if (isset($_POST['sAMAccountName']) && isset($_POST['user_password'])) {
$result = $this->auth_model->authenticate(
$_POST['sAMAccountName'],
$_POST['user_password']
);
if ($result['success']) {
$_SESSION['login'] = true;
$_SESSION['sAMAccountName'] = $_POST['sAMAccountName'];
$_SESSION['is_admin'] = $result['is_admin'];
$_SESSION['admin_ous'] = $result['admin_ous']; // Stocker les OUs administrables
$_SESSION['password'] = $_POST['user_password'];
header('Location: /index.php');
exit;
} else {
$error_message = 'Identifiants incorrects';
require_once __DIR__ . '/../views/auth.php';
}
} else {
require_once __DIR__ . '/../views/auth.php';
}
}
}
if (session_status() == PHP_SESSION_NONE) {
session_start();
}
$controller = new AuthController();
$controller->login();