我在 PHP 中创建了用户系统。现在我想要这个,如果我从数据库中删除用户帐户,那么会话应该被销毁并且用户应该被注销并向他显示一条消息。
我已经搜索了很多,我从中得到了一个(堆栈溢出),但这不是我问题的答案。这是链接:删除用户但仍登录后销毁会话。我已经检查了这些答案,但这些不是我的问题的答案。
我知道函数,session_destroy()但我怎样才能让它按我想要的方式工作。如何实施才能完成这项工作。
下面是用户登录功能代码:
public function userLogin($data){
$phone_number = mysqli_real_escape_string($this->db->link, $data['phone_number']);
$password = mysqli_real_escape_string($this->db->link, $data['password']);
if($phone_number == "" || $password == ""){
$loginmsg = "<div class='alert alert-danger'>Phone number or Password must not be empty!<button type='button' class='close' data-dismiss='alert' aria-label='Close'><span aria-hidden='true'>×</span></button></div>";
return $loginmsg;
} else {
$this->setSessionDuringLogin($phone_number, $password);
}
}
public function setSessionDuringLogin($phone_number, $password){
$query = "SELECT * FROM users WHERE phone_number = '$phone_number' AND password = '$password'";
$result = $this->db->select($query);
if($result != false){
$value = $result->fetch_assoc();
Session::set("userlogin", true);
Session::set("user_id", $value['user_id']);
Session::set("first_name", $value['first_name']);
Session::set("last_name", $value['last_name']);
Session::set("email", $value['email']);
Session::set("password", $value['password']);
header("Location: profile.php");
} else {
$loginmsg = "<div class='alert alert-danger'>Email or Password is wrong.<button type='button' class='close' data-dismiss='alert' aria-label='Close'><span aria-hidden='true'>×</span></button></div>";
return $loginmsg;
}
}
呼唤远方
尚方宝剑之说