-
Notifications
You must be signed in to change notification settings - Fork 2
/
user.php
71 lines (56 loc) · 1.69 KB
/
user.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
<?php
class User {
private $id;
private $name;
private $email;
private $password;
public function __construct($name, $email, $hash) {
$this->name = $name;
$this->email = $email;
$this->password = $hash;
}
public function getId() {
return $this->id;
}
public function setId($id) {
$this->id = $id;
}
public function getName() {
return $this->name;
}
public function setName($name) {
$this->name = $name;
}
public function getEmail() {
return $this->email;
}
public function setEmail($email) {
$this->email = $email;
}
public function setPassword($password) {
$this->password = $password;
}
public function login($email, $password, $connection) {
$query = mysqli_query($connection, "SELECT * FROM users WHERE E_mail = '$email' AND hashed_password = '$password'");
if ($result = mysqli_fetch_array($query)) {
$this->setId($result['idUzytkownika']);
$this->setName($result['Username']);
$this->setEmail($result['E_mail']);
$this->setPassword($result['hashed_password']);
return true;
}
return false;
}
public function changePassword($currentPassword, $newPassword) {
if (password_verify($currentPassword, $this->password)) {
$this->setPassword($newPassword);
return "Password changed successfully!";
} else {
return "Current password is incorrect.";
}
}
public function changeEmail($newEmail) {
$this->email = $newEmail;
return "Email changed successfully!";
}
}