Witajcie
Czy można jakoś połączyć poniższe funkcje w jedną, jakoś samemu nie potrafię, dlatego zrobiłem dwie oddzielne, ale chyba lepiej jest jak jest mniej zapytań do bazy zwłaszcza takich samych.
public function login($data) {
$data['user_pass'] = $this->code_passwd($data['user_pass']);
$result = $this->sql->query("SELECT user_id FROM users WHERE user_login = '{$data['user_login']}' AND user_pass = '{$data['user_pass']}' LIMIT 1");
if($result->num_rows > 0) {
return $result->fetch_row()[0];
} else {
return ['Podany login i/lub hasło są niepoprawne. Spróbuj Ponownie. <br />' .
'Zapomniałem <a href="index.php?action=forgetten">Hasła.</a>'];
}
}
public function loged_in($data) {
$data['user_pass'] = $this->code_passwd($data['user_pass']);
$result = $this->sql->query("SELECT user_id FROM users WHERE user_login = '{$data['user_login']}' AND user_pass = '{$data['user_pass']}' LIMIT 1");
$value = mysqli_fetch_object($result);
$user_id = $value->user_id;
$query = "
UPDATE users
SET
user_last_login_IP = '" . ip2long($this->getClientIP()) . "' WHERE user_id = '{$user_id}'
";
$result = $this->sql->query($query);
if($result === false) {
$errors[] = "Wystąpił błąd z bazą danych.";
return $errors;
}
}
A może po prostu w drugiej funkcji sprawdzę czy pierwsza jest true

?
Zaraz to wypróbuję.