-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathchangepassword.php
97 lines (59 loc) · 1.78 KB
/
changepassword.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
<?php
include 'core/init.php';
protect_page();
if(empty($_POST)===false){
$required_fields = array('current_password','password','password_again');
foreach($_POST as $key=>$value){
if(empty($value) && in_array($key, $required_fields) === true){
$errors[]= 'Fields marked * are necessary';
break 1;
}
}
if(md5($_POST['current_password']) === $user_data['password'] ){
//current password entered correctly, proceed to check the new passwords
if( trim($_POST['password']) !== trim($_POST['password_again']) ){
$errors[]='Your new passwords do not match';
} else if(strlen($_POST['password']) < 6){
$errors[]='Your new password must be at least 6 characters in length';
}
} else{
$errors[]='Current password is entered incorrectly';
}
}
include 'includes/overall/header.php'; ?>
<h1>Change password</h1>
<?php
if(isset($_GET['success']) && empty($_GET['success'])){
echo 'You\'ve successfully changed the password!';
} else{
if(empty($_POST) === false && empty($errors) === true) {
//posted the form and no errors
change_password($session_user_id, $_POST['password']);
header('Location: changepassword.php?success');
} else if(empty($errors) === false){
//output errors
echo output_errors($errors);
}
?>
<form action="" method="post">
<ul>
<li>
Current password*:<br>
<input type="password" name="current_password">
</li>
<li>
New password*:<br>
<input type="password" name="password">
</li>
<li>
Re-enter New password*:<br>
<input type="password" name="password_again">
</li>
<li>
<input type="submit" value="Change password">
</li>
</ul>
</form>
<?php
}
include 'includes/overall/footer.php'; ?>