使用PHP和MySQL登录管理员会员网站-登录不起作用

使用PHP和MySQL登录管理员会员网站-登录不起作用,php,mysql,session,login,logout,Php,Mysql,Session,Login,Logout,我正在使用PHP和MySQL构建一个数据库驱动的网站。登录表单工作得很好,但在我向代码中添加了一个新函数,让用户登录到管理员或成员页面后,登录停止在表单上显示(例如)“Welcome,Pat,Administrator”或“Welcome,Gina,member” 表单是一个小表单,显示在网站的每个页面上,作为登录或提醒他们已经登录(使用会话)。现在,当我登录一个人时,它确实会将他们带到管理员或成员页面,但它不会在表单中显示登录信息,而且单击“注销”按钮时也不会工作。这是我的登录和注销代码,以及

我正在使用PHP和MySQL构建一个数据库驱动的网站。登录表单工作得很好,但在我向代码中添加了一个新函数,让用户登录到管理员或成员页面后,登录停止在表单上显示(例如)“Welcome,Pat,Administrator”或“Welcome,Gina,member”

表单是一个小表单,显示在网站的每个页面上,作为登录或提醒他们已经登录(使用会话)。现在,当我登录一个人时,它确实会将他们带到管理员或成员页面,但它不会在表单中显示登录信息,而且单击“注销”按钮时也不会工作。这是我的登录和注销代码,以及我用来访问管理页面或成员页面的函数代码

注销表单,在他们单击注销之前,该表单应显示他们已登录,但它不起作用:

<form method="post" id="logoutform.inc.html">
    <fieldset>
        <legend>Logout</legend>  
        <?php

        include('includes/functions.php');

        if(isset($results)){
            if ((isset($_SESSION['loginName'])) === $result['email'] && (isset($_SESSION['password'])) === $result['password']){
                echo "Welcome, <br />";
                echo "$level, <br />";
                echo get_name($results); 
                // print_r($_POST);
                print '<br />';
            } else {
                 var_dump($results);
            }
        }

        ?>
        <br /><br /><br />     
        <input type="submit" name="action" value="logout" />
    </fieldset>
</form>
将您带到管理员或成员页面的登录功能:此功能不会在其他eiher中打印任何内容:

function login($loginName, $password) {
    $results = connect($loginName);
    if ((isset($_SESSION['loginName'])) === $result['email'] && (isset($_SESSION['password'])) === $result['password']){
        var_dump($loginName);
        print "Welcome, $loginName";
    } else {
        echo "Sorry. You are not in our database";
    }

    if ( 'a' == $results['level'] ){
        $level = "Administrator";
    } elseif ( 'm' == $results['level'] ){
        $level = "Member";
    } else $level = '?';

    if ($level === "Administrator"){
        header('Location: /tires/admin/home.php');
        exit();
    } elseif ($level === "Member"){
        header('Location: /tires/member/home.php');
        exit();
    }
    include('includes/logoutform.inc.html');
}
以下是连接查询:

function connect($loginName){
    global $db;
    $query = "SELECT email, level, password FROM members WHERE email    = '$loginName'";
    $result = $db->query($query);
    $results = $result->fetch(PDO::FETCH_ASSOC);
    return $results;
};

我对函数login($loginName,$password)做了一些更改。请参考下面的代码,我检查了代码,它显示logoutform.inc.html未包含在内

function login($loginName, $password) {
$results = connect($loginName);
if ((isset($_SESSION['loginName'])) === $result['email'] && (isset($_SESSION    ['password'])) === $result['password']) 
{var_dump($loginName);
print "Welcome, $loginName";}

 else {

     echo "Sorry. You are not in our database";
  }
include('includes/logoutform.inc.html');

 if ( 'a' == $results['level'] )  {
     header('Location: /tires/admin/home.php');
 } 
 elseif ( 'm' == $results['level'] ) {
     header('Location: /tires/member/home.php');
 }
 else $level = '?'; 

 }

你能给我看一下连接的结果吗($loginName);它说它是空的,但我不知道为什么,因为在我添加:if($level==“Administrator”){header($Location:/tires/admin/home.php');exit();}elseif($level==“Member”){header($Location:/tires/Member/home.php');exit();}之前它工作得很好。我希望这对我有用。它仍然拒绝注销-当它登录时,它没有显示正确的登录信息:如欢迎、Pat、管理员。有一次,它工作得很好,直到我把它转到不同的文件夹——管理员和成员文件夹。就在那时它坏了。非常感谢你的帮助,上帝保佑你。如果你还有什么想法,我一定会期待的。
function connect($loginName){
    global $db;
    $query = "SELECT email, level, password FROM members WHERE email    = '$loginName'";
    $result = $db->query($query);
    $results = $result->fetch(PDO::FETCH_ASSOC);
    return $results;
};
function login($loginName, $password) {
$results = connect($loginName);
if ((isset($_SESSION['loginName'])) === $result['email'] && (isset($_SESSION    ['password'])) === $result['password']) 
{var_dump($loginName);
print "Welcome, $loginName";}

 else {

     echo "Sorry. You are not in our database";
  }
include('includes/logoutform.inc.html');

 if ( 'a' == $results['level'] )  {
     header('Location: /tires/admin/home.php');
 } 
 elseif ( 'm' == $results['level'] ) {
     header('Location: /tires/member/home.php');
 }
 else $level = '?'; 

 }