首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >当用户登录时显示“注销”按钮,当用户未使用PHP/MySQL时显示“连接”按钮

当用户登录时显示“注销”按钮,当用户未使用PHP/MySQL时显示“连接”按钮
EN

Stack Overflow用户
提问于 2018-07-09 00:53:26
回答 2查看 782关注 0票数 1

layout.phtml

代码语言:javascript
复制
<?php if (isset($_SESSION['user']) && ($_SESSION['user'] == false)): ?>
    <p>Hello </p>
    <a href="logout.php">Logout</a>
<?php else: ?>
    <a href="register.php">Sign up</a>
    <a href="userconnect.php">Connect</a>
<?php endif; ?>

我想在用户登录时显示logout按钮,在用户未登录时显示connect按钮。但是当发送表单数据时,它只显示connect按钮。

userconnect.phtml

这里有一个html表单。

代码语言:javascript
复制
<div class="user-connect">
  <?php if (isset($message)) { echo $message; } ?>
    <form action="userconnect.php" method="post">
        <ul>
            <li>
                <label for="email"></label>
                <input type="text" id='email' name='email'>
            </li>
            <li>
                <label for="password"></label>
                <input type="password" id='password' name='password'>
            </li>
            <li>
                <input type="submit" name="enter">
            </li>
        </ul>
    </form>
</div>

userconnect.php

代码语言:javascript
复制
<?php

session_start();

if(isset($_POST["enter"]) && !empty($_POST["enter"])) {
    if(!empty($_POST['email']) && !empty($_POST['password'])) 
    {
        $email = htmlspecialchars($_POST['email']);
        $password = htmlspecialchars(md5(md5($_POST['password'])));

        include ("connection.php");
        $query = $db->prepare('SELECT ID, email, password, firstName FROM user WHERE email = ?');
        $query->execute([$_POST['email']]);
        $user = $query->fetch();  

        if ($user) {
            if($_POST['password'] == $user['password'] && $_POST['email'] == $user['email'])
            {
                $_SESSION['user'] = [
                    'email' => $user['email'],
                    'id' => $user['ID'] 
                ];
            }
            $message = "Vous etes connectez!";
        } else {
            $message = "Invalide email ou mot de passe!";
        }
    } else {
        $message = "Champs obligatoire a saisir";
    }
}

$template = 'userconnect';
include 'layout.phtml';

转储$_SESSION['user']

代码语言:javascript
复制
<?php var_dump(isset($_SESSION['user'])); ?> 

显示bool(false)

您能告诉我如何显示logout按钮吗?

我到处都找遍了,也找不到答案。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51234180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档