You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
5.8 KiB
82 lines
5.8 KiB
2 years ago
|
<?php
|
||
|
|
||
|
/**
|
||
|
* Page de traitement permettant la modification des informations des utilisateurs.
|
||
|
*/
|
||
|
|
||
|
session_start();
|
||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||
|
testPrivileges();
|
||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/utilisateurs.php");
|
||
|
|
||
2 years ago
|
$liste_utilisateurs = listeTousUtilisateursBdd($pdo);
|
||
2 years ago
|
|
||
|
foreach ($liste_utilisateurs as $enieme_utilisateur_liste => $infos_utilisateur_liste){
|
||
|
// Vérification de la correspondance entre l'ID de l'utilisateur soumis par formulaire avec celui en base de données (évite l'usurpation d'utilisateurs)
|
||
|
if (isset($_POST['utilisateur'][$enieme_utilisateur_liste]['id_utilisateur']) && $_POST['utilisateur'][$enieme_utilisateur_liste]['id_utilisateur'] === $infos_utilisateur_liste['id']) {
|
||
|
if (isset($_POST['utilisateur'][$enieme_utilisateur_liste]['etat_utilisateur']) && isset($_POST['utilisateur'][$enieme_utilisateur_liste]['nom_complet_utilisateur']) && isset($_POST['utilisateur'][$enieme_utilisateur_liste]['prefixe_utilisateur']) && isset($_POST['utilisateur'][$enieme_utilisateur_liste]['choix_privilege_utilisateur']) && isset($_POST['utilisateur'][$enieme_utilisateur_liste]['mot_de_passe_utilisateur']) && isset($_POST['utilisateur'][$enieme_utilisateur_liste]['confirmation_mot_de_passe_utilisateur'])) {
|
||
|
// Vérification de l'existence de changements pour l'utilisateur parcouru. Cette condition évite de réécrire les données inchangées des utilisateurs non modifiés
|
||
|
if ($infos_utilisateur_liste['active'] != $_POST['utilisateur'][$enieme_utilisateur_liste]['etat_utilisateur'] || $infos_utilisateur_liste['nom_complet'] != $_POST['utilisateur'][$enieme_utilisateur_liste]['nom_complet_utilisateur'] || $infos_utilisateur_liste['prefixe'] != $_POST['utilisateur'][$enieme_utilisateur_liste]['prefixe_utilisateur'] || $infos_utilisateur_liste['privilege'] != $_POST['utilisateur'][$enieme_utilisateur_liste]['choix_privilege_utilisateur'] || !empty($_POST['utilisateur'][$enieme_utilisateur_liste]['mot_de_passe_utilisateur'])) {
|
||
|
// Vérification de la validité des informations de privilèges et d'état soumises au formulaire
|
||
|
if (($_POST['utilisateur'][$enieme_utilisateur_liste]['choix_privilege_utilisateur'] === "utilisateur" || $_POST['utilisateur'][$enieme_utilisateur_liste]['choix_privilege_utilisateur'] === "administrateur") && ($_POST['utilisateur'][$enieme_utilisateur_liste]['etat_utilisateur'] === "0" || $_POST['utilisateur'][$enieme_utilisateur_liste]['etat_utilisateur'] === "1")) {
|
||
|
$nouvelles_données_utilisateur=array(
|
||
|
"id_utilisateur" => $_POST['utilisateur'][$enieme_utilisateur_liste]['id_utilisateur'],
|
||
|
"nom_utilisateur" => $infos_utilisateur_liste['utilisateur'],
|
||
|
"etat_utilisateur" => $_POST['utilisateur'][$enieme_utilisateur_liste]['etat_utilisateur'],
|
||
|
"nom_complet_utilisateur" => $_POST['utilisateur'][$enieme_utilisateur_liste]['nom_complet_utilisateur'],
|
||
|
"prefixe_utilisateur" => $_POST['utilisateur'][$enieme_utilisateur_liste]['prefixe_utilisateur'],
|
||
|
"choix_privilege_utilisateur" => $_POST['utilisateur'][$enieme_utilisateur_liste]['choix_privilege_utilisateur'],
|
||
|
);
|
||
|
|
||
|
// Sécurité empêchant l'administrateur connecté de se désactiver lui-même
|
||
|
if ($nouvelles_données_utilisateur['nom_utilisateur'] === $_SESSION['pseudo_connexion_utilisateur']) {
|
||
|
$nouvelles_données_utilisateur['etat_utilisateur'] = "1";
|
||
|
}
|
||
|
|
||
|
modifUtilisateursBdd($pdo,$nouvelles_données_utilisateur);
|
||
|
|
||
|
// Changement du mot de passe de l'utilisateur
|
||
|
if (!empty($_POST['utilisateur'][$enieme_utilisateur_liste]['mot_de_passe_utilisateur']) && !empty($_POST['utilisateur'][$enieme_utilisateur_liste]['confirmation_mot_de_passe_utilisateur']) && $_POST['utilisateur'][$enieme_utilisateur_liste]['mot_de_passe_utilisateur'] === $_POST['utilisateur'][$enieme_utilisateur_liste]['confirmation_mot_de_passe_utilisateur']) {
|
||
2 years ago
|
changeMotDePasseUtilisateurBdd($pdo,$nouvelles_données_utilisateur['nom_utilisateur'],$_POST['utilisateur'][$enieme_utilisateur_liste]['mot_de_passe_utilisateur'],$_POST['utilisateur'][$enieme_utilisateur_liste]['confirmation_mot_de_passe_utilisateur']);
|
||
2 years ago
|
}
|
||
|
}
|
||
|
}
|
||
|
// Si aucun changement sur l'utilisateur parcouru, ne rien faire et passer au suivant
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
header ("Location: /pages/gestion/administration.php?page=utilisateurs&succes=22");
|
||
|
die();
|
||
|
|
||
|
|
||
|
/*$numero_entree=1;
|
||
|
foreach ($_POST as $cle_post => $infos_utilisateur){
|
||
|
$toto=$_POST["id_utilisateur$numero_entree"];
|
||
|
echo $_POST["nom_complet_utilisateur$toto"];/*
|
||
|
// Vérification de l'existance du domaine renseigné par l'utilisateur
|
||
|
/*if ($_POST['choix_domaine_utilisateur'] === $domaine_valeurs['domaine']) {
|
||
|
if ($_POST['choix_privilege_utilisateur'] === 'utilisateur' || $_POST['prefixe_utilisateur'] === 'administrateur') {
|
||
|
modifUtilisateursBdd($pdo,$_POST["nom_complet_utilisateur$id_utilisateur"],$_POST["prefixe_utilisateur$id_utilisateur"],$_POST["choix_privilege_utilisateur$id_utilisateur"],$_POST['mot_de_passe_utilisateur'],$_POST['nom_complet_utilisateur'],$_POST['choix_privilege_utilisateur']);
|
||
2 years ago
|
changeMotDePasseUtilisateurBdd($pdo,substr(htmlspecialchars($_POST['nom_utilisateur']."@".$_POST['choix_domaine_utilisateur']),0,100),trim($_POST['mot_de_passe_utilisateur']),trim($_POST['mot_de_passe_utilisateur']));
|
||
2 years ago
|
header ("Location: /pages/gestion/administration.php?page=utilisateurs&succes=20");
|
||
|
die();
|
||
|
}
|
||
|
else {
|
||
|
header ("Location: /pages/gestion/administration.php?page=utilisateurs&erreur=27");
|
||
|
die();
|
||
|
}
|
||
|
}*/
|
||
|
/*$numero_entree++;
|
||
|
}*/
|
||
|
//echo "$id_utilisateur";
|
||
|
//echo "$infos_utilisateur";
|
||
|
/*die();
|
||
|
header ("Location: /pages/gestion/administration.php?page=utilisateurs&erreur=26");
|
||
|
die();
|
||
|
|
||
|
|
||
|
modifUtilisateursBdd($pdo,$_POST);
|
||
|
header ("Location: /pages/gestion/administration.php?page=utilisateurs&succes=22");*/
|
||
|
|
||
|
?>
|