blob: 4c36e580ede5139998012bc75f99ec2c4422747c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
<?php
require('../includes/config.php');
// Une fois le formulaire envoyé
if(isset($_POST["recuperationpass"]))
{
if(!empty($_POST['email'])) {
$email = htmlentities($_POST['email']);
}
else {
$error[] = 'veuillez renseigner votre adresse email.';
}
$stmt = $db->query("SELECT email FROM blog_members WHERE email = '".$email."' ");
//si le nombre de lignes retourne par la requete != 1
if ($stmt->rowCount() != 1) {
$error[] = 'adresse e-mail inconnue.';
}
else {
$row1 = $stmt->fetch();
$retour = $db->query("SELECT password FROM blog_members WHERE email = '".$email."' ");
$row2 = $retour->fetch();
$new_password = fct_passwd(); //création d'un nouveau mot de passe
$hashedpassword = $user->password_hash($new_password, PASSWORD_BCRYPT); // cryptage du password
//On crée le mail
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= 'From: '.SITENAME.' <'.SITEMAIL.'>'."\r\n";
//$headers .= '\r\n';
$objet = 'Votre nouveau mot de passe sur '.SITEURL;
$message = "Bonjour,<br/>\n";
$message .= "Vous avez demandé un nouveau mot de passe pour votre compte sur " . SITEURL . ".<br/>\n";
$message .= "Votre nouveau mot de passe est : " . $new_password . "<br/>\n\n";
$message .= "Cordialement,<br/>\n\n";
$message .= "L'equipe de " . SITENAME;
if(!mail($row1['email'], $objet, $message, $headers)) {
$error[] = "Problème lors de l'envoi du mail.";
}
else {
//mise à jour de la base de données de l'utilisateur
$stmt = $db->prepare('UPDATE blog_members SET password = :password WHERE email = :email') ;
$stmt->execute(array(
':password' => $hashedpassword,
':email' => $email
));
$cok = "Un mail contenant votre nouveau mot de passe vous a été envoyé.<br/>Veuillez le consulter avant de vous reconnecter sur " . SITEURL.'.';
}
}
}
$pagetitle = 'Demande de nouveau mot de passe';
require('../includes/header.php');
?>
<div id="container">
<?php
require('../includes/header-logo.php');
require('../includes/nav.php');
?>
<div id="body">
<div id="content">
<h2><span>Vous avez oublié votre mot de passe ?</span></h2>
<!-- formulaire -->
<form action='' method='post'>
<span class="alert-msg rnd8 warning">
Vous allez faire une demande de nouveau mot de passe.<br />
Ce nouveau mot de passe vous sera envoyé par e-mail.<br/>
Une fois connecté avec vos identifiants, vous pourrez éventuellement redéfinir un mot de passe à partir de votre page profil.<br/>
<br />Veuillez donc entrer ci-dessous l'adresse e-mail correspondant à votre compte :
</span>
<p>
Entrez l'adresse e-mail de votre compte : <input type="text" name="email" />
</p>
<p>
<input type="submit" name="recuperationpass" class="searchsubmit formbutton" value="Envoyer" /> <input type="reset" value="Annuler" />
</p>
</form>
<?php
//check for any errors
if(isset($error)){
foreach($error as $error){
echo '<p class="alert-msg rnd8 error">ERREUR : '.$error.'</p>';
}
}
elseif (isset($cok)) {
echo '<h4 style="color: green;">' . $cok . '</h4>';
}
?>
</div>
<?php require('../sidebar.php'); ?>
<div class="clear"></div>
</div>
</div>
<div id="footer">
<?php require('../includes/footer.php'); ?>
</div>
</body>
</html>
|