Commit edeb3f35296d85b11187d28d49b9bed9878e3564
1 parent
35c0c64d
api/utilisateur/mdp
Showing
2 changed files
with
32 additions
and
0 deletions
Show diff stats
api/commun.php
@@ -46,6 +46,7 @@ function verifierJeton($jeton) { | @@ -46,6 +46,7 @@ function verifierJeton($jeton) { | ||
46 | if (!$requete->execute()) { | 46 | if (!$requete->execute()) { |
47 | retour("erreur_bdd", ["message" => $requete->error]); | 47 | retour("erreur_bdd", ["message" => $requete->error]); |
48 | } | 48 | } |
49 | + // On écrit dans les variables globales $login & $droit | ||
49 | $requete->bind_result($login, $droit, $date); | 50 | $requete->bind_result($login, $droit, $date); |
50 | if ($requete->fetch()) { | 51 | if ($requete->fetch()) { |
51 | if (time() > $date + JETON_DUREE) { | 52 | if (time() > $date + JETON_DUREE) { |
@@ -0,0 +1,31 @@ | @@ -0,0 +1,31 @@ | ||
1 | +<?php | ||
2 | + | ||
3 | +require_once("../commun.php"); | ||
4 | + | ||
5 | +verifierJeton(donne("jeton")); | ||
6 | + | ||
7 | +if (!(donne("login") && donne("mdp"))) { | ||
8 | + retour("requete_malformee"); | ||
9 | +} | ||
10 | + | ||
11 | +if (!utilisateurExiste(donne("login"))) { | ||
12 | + retour("utilisateur_inconnu"); | ||
13 | +} | ||
14 | + | ||
15 | +if ($login != donne("login")) { | ||
16 | + // Si on essaye de modifier le mot de passe de quelqu'un d'autre | ||
17 | + // on doit être le président | ||
18 | + verifierDroit(3); | ||
19 | +} | ||
20 | + | ||
21 | +$requete = $db->prepare("UPDATE Utilisateurs SET mdp=? WHERE login=?"); | ||
22 | +$mdpHash = password_hash($_POST["mdp"], PASSWORD_DEFAULT); | ||
23 | +$requete->bind_param("ss", $mdpHash, $_POST["login"]); | ||
24 | +if (!$requete->execute()) { | ||
25 | + retour("erreur_bdd", ["message" => $requete->error]); | ||
26 | +} | ||
27 | +$requete->close(); | ||
28 | + | ||
29 | +retour("ok"); | ||
30 | + | ||
31 | +?> |