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.
Courtail/services/traitements/utilisateurs/changeMotDePasseUtilisateur...

45 lines
2.1 KiB

<?php
/**
* Page de traitement permettant le changement du mot de passe d'un utilisateur.
* Elle est appelée par la page de paramètres.
* Un champ supplémentaire demandant l'ancien mot de passe est affiché et exigé sur cette derniere lorsque la requête provient d'un utilisateur ordinaire.
*/
session_start();
require_once($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
testPrivileges();
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/utilisateurs.php");
if ($_SESSION['privilege_utilisateur']=="administrateur" && isset($_POST['nouveau_mot_de_passe']) && !empty($_POST['nouveau_mot_de_passe']) && isset($_POST['confirmation_mot_de_passe']) && !empty($_POST['confirmation_mot_de_passe'])) {
if (changeMotDePasseUtilisateurBdd($pdo,$_SESSION['pseudo_utilisateur'],trim($_POST['nouveau_mot_de_passe']),trim($_POST['confirmation_mot_de_passe']))) {
header ("Location: /pages/gestion/administration.php?page=parametres&succes=16");
die();
}
else {
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=21");
die();
}
}
elseif ($_SESSION['privilege_utilisateur']=="utilisateur" && isset($_POST['ancien_mot_de_passe']) && !empty($_POST['ancien_mot_de_passe']) && isset($_POST['nouveau_mot_de_passe']) && !empty($_POST['nouveau_mot_de_passe']) && isset($_POST['confirmation_mot_de_passe']) && !empty($_POST['confirmation_mot_de_passe'])) {
if (verificationMotDePasseUtilisateurBdd($pdo,$_SESSION['pseudo_utilisateur'],trim($_POST['ancien_mot_de_passe']))) {
if (changeMotDePasseUtilisateurBdd($pdo,$_SESSION['pseudo_utilisateur'],trim($_POST['nouveau_mot_de_passe']),trim($_POST['confirmation_mot_de_passe']))) {
header ("Location: /pages/gestion/administration.php?page=parametres&succes=16");
die();
}
else {
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=21");
die();
}
}
else {
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=20");
die();
}
}
else {
header ("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18");
die();
}
?>