fix login
This commit is contained in:
10
database.php
10
database.php
@@ -53,8 +53,8 @@ class mxDatabase
|
||||
$this->db->exec("CREATE TABLE logins (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
active INT DEFAULT 1,
|
||||
firstname TEXT,
|
||||
lastname TEXT,
|
||||
first_name TEXT,
|
||||
last_name TEXT,
|
||||
localpart TEXT,
|
||||
password_hash TEXT,
|
||||
email TEXT,
|
||||
@@ -225,12 +225,12 @@ class mxDatabase
|
||||
$sql = "SELECT COUNT(*) FROM logins WHERE localpart = '" . $localpart
|
||||
. "' AND active = 1 LIMIT 1;";
|
||||
$res = $this->db->query($sql);
|
||||
$first_name = NULL; $last_name = NULL; $username = NULL; $note = NULL; $email = NULL;
|
||||
|
||||
if ($res->fetchColumn() > 0) {
|
||||
$sql = "SELECT first_name, last_name, email, password_hash FROM logins "
|
||||
. " WHERE verify_token = '" . $token . "' LIMIT 1;";
|
||||
. " WHERE localpart = '" . $localpart . "' LIMIT 1;";
|
||||
foreach ($this->db->query($sql) as $row) {
|
||||
error_log($password . "-" . $row["password_hash"]);
|
||||
// will only be executed once
|
||||
if (password_verify($password, $row["password_hash"])) {
|
||||
return $row;
|
||||
@@ -258,7 +258,7 @@ class mxDatabase
|
||||
$password = bin2hex(openssl_random_pseudo_bytes(5));
|
||||
$password_hash = password_hash($password, PASSWORD_BCRYPT, ["cost"=>12]);
|
||||
|
||||
$sql = "INSERT INTO logins (firstname, lastname, localpart, password_hash, email) VALUES "
|
||||
$sql = "INSERT INTO logins (first_name, last_name, localpart, password_hash, email) VALUES "
|
||||
. '("' . $first_name.'","' . $last_name . '","' . $username . '","'
|
||||
. $password_hash . '","' . $email . '")';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user