function actionLost() { $arrResult = []; $sql = 'SELECT * FROM `users` WHERE `email` = :email'; $db = new Db(); $users = $db->dbSelect($sql, [':email' => $_GET['email']])[0]; if (empty($users)) { $arrResult['result'] = false; $arrResult['message'] = 'Email не зарегистрирован'; } else { $username = $users->username; $tmstamp = time(); $token = md5($username . $tmstamp); $sql = 'UPDATE `users` SET `email_token` = :token, `email_token_tmstamp` = :tmstamp WHERE `email` = :email'; $db = new Db(); $res = $db->dbExecute($sql, [':token' => $token, ':tmstamp' => $tmstamp, ':email' => $_GET['email']]); if (!$res) { $arrResult['result'] = false; $arrResult['message'] = 'Не удалось создать сссылку.'; } else { $email = new MyMailer(); $email->addAddress($_GET['email']); $email->username = $username; $email->href = 'http://probation/pwd.php?user='******'&token=' . $token; $email->date = date('d.m.y H:i:s', $tmstamp); if ($email->sendMail()) { $arrResult['result'] = true; $arrResult['message'] = 'Вам направлено письмо'; } else { $arrResult['result'] = false; $arrResult['message'] = 'Не удалось отправить письмо'; } } } echo json_encode($arrResult, JSON_UNESCAPED_UNICODE); }