我正在尝试创建一个用户登录页面,当您登录该网站时,您将被重定向到用户帐户页面。在此用户帐户页面中,我需要打印当前登录用户的名称。但是我该怎么做?这是我的PHP代码:
<?php
require_once 'init.php';
$user = new User();
if(!$user->isLoggedin()){
Redirect::to('login.php');
}
if($_SESSION["loggedin"] == false ){ //redirects to index if login is incorrect
redirect_to("index.html");
}
//if successful, assign values to variable
$display_name = $_SESSION["loggeduser"];
$loguid = $_SESSION["userID"];
?>
这里是正文页面的代码:
<div id="about" class="container-fluid ">
<div class="row">
<div class="col-sm-8">
<h2>Welcome <?php echo $display_name ?> to your account! </h2><br>
<br>
<div>
<h2><a href="signup.php">REGISTER STUDENT ACCOUNT </a></h2>
</div>
<div>
<h2><a href="medicaldictionary.php">INSERT MEDICAL TERM </a></h2>
</div>
<div>
<h2><a href="logout.php">LOG-OUT </a></h2>
</div>
当我尝试运行它时,它表示未定义的索引已登录 和未定义的函数redirect_to
我不太明白为什么。有人能帮助我吗?
答案 0 :(得分:1)
检查登录页面中使用的登录ID /电子邮件,并使用数据库表中的该提取对应的用户名。在$ display_name变量中从db表获取数据。
例如 -
$sql = "SELECT student_name FROM student_table where stduent_id = ".$userID;
$display_name = mysqli_query($conn,$sql);
您也可以使用session
执行此操作
将UserID分配给SessionID并使用该sessionID,您可以获取该登录用户的其他数据。
答案 1 :(得分:0)
首先在代码顶部加session_start();
,然后再次检查您的会话loggedin
,
if (!isset($_SESSION['loggedin']) || !$_SESSION['loggedin'] ) {
Redirect::to('index.html');
/* not redirect_to("index.html")
I guess you already have a Class Redirect that has a static method to()*/
}