如果用户已经在 php mysql 中登录,如何将用户重定向到配置文件页面

我有登录字段 id 和密码的主页如果用户使用 id 和密码登录它重定向到 profile.php 它工作正常,但是当我打开新选项卡时它再次显示登录页面而不是配置文件页面。下面是我的代码


<?php

session_start();


include('includes/config.php');

if(isset($_POST['login']))

{

$status='1';

$email=$_POST['username'];

$password=md5($_POST['password']);

$sql ="SELECT email,password FROM users WHERE email=:email and password=:password and status=(:status)";

$query= $dbh -> prepare($sql);

$query-> bindParam(':email', $email, PDO::PARAM_STR);

$query-> bindParam(':password', $password, PDO::PARAM_STR);

$query-> bindParam(':status', $status, PDO::PARAM_STR);

$query-> execute();

$results=$query->fetchAll(PDO::FETCH_OBJ);

if($query->rowCount() > 0)

{

$_SESSION['alogin']=$_POST['username'];


echo "<script type='text/javascript'> document.location = 'profile.php'; </script>";

} else{


echo "<script>alert('Invalid Details Or Account Not Confirmed');</script>";


}


}


?>

如果用户已经登录,如果在新选项卡或新窗口中打开,如何将用户重定向到 profile.php


这是“admin”目录中的同一个登录页面


<?php

session_start();

if(isset($_SESSION['alogin'])){

 header('Location: dashboard.php');

}

include('includes/config.php');

if(isset($_POST['login']))

{

$email=$_POST['username'];

$password=md5($_POST['password']);

$sql ="SELECT UserName,Password FROM admin WHERE UserName=:email and Password=:password";

$query= $dbh -> prepare($sql);

$query-> bindParam(':email', $email, PDO::PARAM_STR);

$query-> bindParam(':password', $password, PDO::PARAM_STR);

$query-> execute();

$results=$query->fetchAll(PDO::FETCH_OBJ);

if($query->rowCount() > 0)

{

$_SESSION['alogin']=$_POST['username'];

echo "<script type='text/javascript'> document.location = 'dashboard.php'; </script>";

} else{


  echo "<script>alert('Invalid Details');</script>";


}


}


?>

这是 logout.php 两者相同,只是目录不同


<?php

session_start(); 

$_SESSION = array();

if (ini_get("session.use_cookies")) {

    $params = session_get_cookie_params();

    setcookie(session_name(), '', time() - 60*60,

        $params["path"], $params["domain"],

        $params["secure"], $params["httponly"]

    );

}


问题是如果我在不同选项卡的同一个窗口中登录如果我登录用户然后管理员也登录并且如果我注销其中任何一个用户或管理员都注销


holdtom
浏览 102回答 1
1回答

开满天机

那么您可以将此代码添加到您的 php 代码中。这是你应该做的<?phpsession_start();if(isset($_SESSION['alogin'])){&nbsp;header('Location: profile_page.php');}希望对你有帮助,还有很多这样的问题。
打开App,查看更多内容
随时随地看视频慕课网APP