-
Notifications
You must be signed in to change notification settings - Fork 0
/
doforgetpsw.php
120 lines (117 loc) · 5.21 KB
/
doforgetpsw.php
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
<?php $title = "Återställa ett nytt lösenord"; ?>
<?php require "Includes/header.php"; ?>
<!-- Lösenordsåterställningsprocess -->
<div class="container text-center">
<h1>Återställa ditt lösenord.</h1>
<p>
Här kan du skapa ett nytt lösenord.
</p>
<div class="container-fluid">
<div id="doforgetpswmain">
<?php
$key = $_GET['key'];
$uid = $_GET['uid'];
if (isset($key) && isset($uid)) {
// Om det finns återställningsnyckel i adressfältet.
$forgetepswepost = strip_tags(
htmlentities(
isset($_POST['forgetepswepost']) ? $_POST['forgetepswepost'] : ""
)
);
$forgetpsw = strip_tags(
htmlentities(isset($_POST['forgetpsw']) ? $_POST['forgetpsw'] : "")
);
$confirmpsw = strip_tags(
htmlentities(isset($_POST['confirmpsw']) ? $_POST['confirmpsw'] : "")
);
if (isset($_POST['doforgetpswbtn'])) {
// Om man klickade på Återställa lösenordet.
if (
empty($forgetepswepost) ||
empty($forgetpsw) ||
empty($confirmpsw)
) {
// Om man inte fyllde in samtliga obligatoriska fält.
echo "<div class='alert alert-danger'>
Du behöver fylla in samtliga fält.
</div>";
}
// Slut om man inte fyllde in samtliga obligatoriska fält.
else {
// Om man fyllde in samtliga obligatoriska fält.
if (filter_var($forgetepswepost, FILTER_VALIDATE_EMAIL)) {
// Om man fyllde in en korrekt e-postadress.
if (strlen($forgetpsw) >= 6 && strlen($confirmpsw) >= 6) {
// Om lösenordsfält har 6 tecken eller längre.
if ($forgetpsw == $confirmpsw) {
// Om både lösenordsfält matchades.
$functions->changepsw(
$key,
$uid,
$forgetepswepost,
$forgetpsw
);
}
// Slut om både lösenordsfält matchades.
else {
// Om både lösenordsfält inte matchades.
echo "<div class='alert alert-danger'>
Dina lösenordsfält matchas inte. <br />
Du behöver kontrollera både lösenordsfält.
</div>";
} // Slut om både lösenordsfält matchades.
}
// Slut om lösenordsfält har 6 tecken eller längre.
else {
// Om lösenordsfält har mindre än 6 tecken.
echo "<div class='alert alert-danger'>
Ditt lösenord måste ha minst 6 tecken.
</div>";
} // Slut om lösenordsfält har mindre än 6 tecken.
}
// Slut man fyllde in en korrekt e-postadress.
else {
// Om man inte fyllde in en korrekt e-postadress.
echo "<div class='alert alert-danger'>
Du behöver fylla in en korrekt e-postadress.
</div>";
} // Slut man inte fyllde in en korrekt e-postadress.
} // Slut om man fyllde in samtliga obligatoriska fält.
} // Slut om man klickade på Återställa lösenordet. // Lösenordsåterställningsformulär.
echo "
<div class='alert alert-info'>
Samtliga fält är obligatoriska. <br />
Observera att du måste ha minst 6 tecken i det utvalda lösenordet.
</div>
<div class='container mr-lg-1'>
<form action='doforgetpsw.php?key=$key&uid=$uid' method='post' class='p-2 needs-validation myform' novalidate>
<div class='row h-100 justify-content-center align-items-center'>
<div class='form-group'>
<label for='forgetpsw'>Det nya lösenordet:*</label>
<input type='password' name='forgetpsw' id='forgetpsw' class='form-control forgetpsw' required />
</div>
</div>
<div class='row h-100 justify-content-center align-items-center'>
<div class='form-group'>
<label for='confirmpsw'>Bekräfta det nya lösenordet:*</label>
<input type='password' name='confirmpsw' id='confirmpsw' class='form-control forgetpsw' required />
</div>
</div>
<button class='btn btn-primary btn-lg' id='doforgetpswbtn' type='submit' name='doforgetpswbtn'>Återställa lösenordet</button>
</form>
</div>
</div>
";
}
// Slut om det finns återställningsnyckel i adressfältet.
else {
// Om det saknas återställningsnyckel i adressfältet.
echo "<div class='alert alert-danger'>
Länken är ogiltig. Du måste kontakta administratören.
</div>";
}
// Slut det saknas återställningsnyckel i adressfältet.
?>
</div>
</div>
<?php require "Includes/footer.php"; ?>