From 9bac52bc37df4ba0221886341fca0a77f7036bcf Mon Sep 17 00:00:00 2001 From: Morph01 Date: Sun, 2 Feb 2025 14:07:03 -0800 Subject: [PATCH] feat: add user to OU --- controllers/add_user.php | 65 +++++++++++++++++++++++++++++++++ controllers/controllerAdmin.php | 8 ++-- controllers/create_user.php | 19 +++++++--- 3 files changed, 82 insertions(+), 10 deletions(-) create mode 100644 controllers/add_user.php diff --git a/controllers/add_user.php b/controllers/add_user.php new file mode 100644 index 0000000..876fd14 --- /dev/null +++ b/controllers/add_user.php @@ -0,0 +1,65 @@ + $pseudo, + 'sn' => $nom, + 'givenName' => $prenom, + 'mail' => $email, + 'userPassword' => $password, + 'samAccountName' => $samAccountName, + 'objectClass' => ['top', 'person', 'organizationalPerson', 'user'] + ]; + + // Ajout de l'utilisateur + if (@ldap_add($ldapconn, $user_dn, $user_info)) { + echo "Utilisateur créé avec succès dans l'OU : $ou_dn"; + } else { + echo "Erreur lors de la création de l'utilisateur : " . ldap_error($ldapconn); + } + + ldap_close($ldapconn); +} diff --git a/controllers/controllerAdmin.php b/controllers/controllerAdmin.php index a4d54eb..9beed91 100644 --- a/controllers/controllerAdmin.php +++ b/controllers/controllerAdmin.php @@ -39,22 +39,20 @@ function listAllOU() $result = @ldap_search($ldapconn, $searchBase, $filter, $attributes); + $ous = []; if ($result) { $entries = ldap_get_entries($ldapconn, $result); - echo "

Liste des OUs:

"; if ($entries['count'] > 0) { foreach ($entries as $key => $entry) { if (is_numeric($key)) { - echo "OU: " . $entry['ou'][0] . "
"; - echo "DN: " . $entry['distinguishedname'][0] . "

"; + $ous[] = $entry; // Ajouter chaque OU au tableau } } - } else { - echo "Aucune OU trouvée."; } } else { echo "Error: " . ldap_error($ldapconn); } ldap_close($ldapconn); + return $ous; // Retourner le tableau des OUs } diff --git a/controllers/create_user.php b/controllers/create_user.php index 6c8b13f..ee56fa5 100644 --- a/controllers/create_user.php +++ b/controllers/create_user.php @@ -16,18 +16,27 @@ $password = isset($_POST['password']) ? $_POST['password'] : ''; // Display form echo "

Création d'un utilisateur

"; -echo "
"; +echo ""; echo "Nom
"; echo "Prénom
"; echo "Nom d'utilisateur
"; echo "E-Mail
"; echo "Mot de passe
"; + +echo "Choisir une OU
"; + echo "Rôle dans l'OU
"; -echo ""; -echo "
"; -require_once 'controllerAdmin.php'; -listAllOU(); +echo ""; +echo "";