public function signin()
{
$data = $this->pdo('select id, password_hash from users where login = ? limit 1', [
$this->login
])->fetch();
try {
if (is_object($data) and password_verify($this->password, $data->password_hash)) {
if (!is_null($_SESSION['uid'] = $data->id)) {
return true;
}
throw new Error('Что-то пошло не так'); // чтобы не делать возврат строки return $this->error = 'Что-то пошло не так';
}
throw new Error('Данные введены неверно'); // чтобы не делать возврат строки return $this->error = 'Данные введены неверно';
} catch (Error $error) {
$this->error = $error->getMessage();
return false;
}
}
И да, как правильно написал OnlyMyQuestion, это не будет работать
Согласно докам после вызова обработчика выполнение будет остановлено.
if (filter_has_var(0, 'go')) { // логика - нажали кнопку методом POST
$model = new Model();
if ($model->validator() === true) { // логика - валидация прошла
$model->go(); // что-то делаем в БД, если ещё в метод передать имя таблицы, то тоже становится похожим на логику
}
$model->error;
}
мало ли кто что в интернете пишет