繁体   English   中英

在PHP中,如何在用户正确登录后显示他们的信息

[英]In PHP How to display a users information once they have correctly logged in

我搜索了许多示例和解决方案,并遇到了同样的问题,如果有人可以提供帮助,我将不胜感激。

本质上,我已连接数据库,并且当它们正确登录时,该页面将定向到login_success.php 转到页面后,我希望向用户显示其详细信息。

我显然不希望我只是希望了解我要去哪里的问题的答案。

<?php
        ob_start();
        include 'connect.php';
    } else {
        header('Location: main_login.php?error=2');
    }
    ob_end_flush();
?>

您应该先获取用户名和密码,然后再在会话上进行分配,如下所示:

$login_user = mysql_query("SELECT * FROM $tbl_name WHERE email_address = '".$myusername."' and password = '".$mypassword."'");

$row = mysql_fetch_array($login_user);



$_SESSION['myusername'] = $row['myusername'];
$_SESSION['mypassword'] = $row['password']; 

而且,不再使用mysql函数,它们不再受支持和维护,并且已正式贬值。

您似乎没有在登录文件中开始会话。 这将导致$_SESSION变量登录后无法继续进入下一页。由于所有文件中都需要connect.php (很有可能),因此应将session_start()放在顶部。 这样,您的会话就开始了,您不必在每个代码页中都键入该行。

您正在html标记之前回login_success.php信息。 相反,进入您想要显示的代码并使用:

<?= "your email is... ".$_SESSION['myusername']; ?>
<?= $row['forename'] . " " . $row['surname']; ?>

如果您没有看到任何$row变量的内容,请尝试在屏幕上打印$row以检查它们的周期。

<? print_r($row); ?>

如果您没有看到$row任何内容,则您的查询无效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM