2016-03-15 124 views
1

我正在尝试创建用户登录页,其中当您登录到网站时,您将被重定向到用户帐户页面。在这个用户帐户页面中,我需要打印当前登录用户的名称。但我该怎么做?这里是我的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> 

,当我试图运行它,它说未定义指数的loggedIn 和未定义功能redirect_to的

我可以不太明白为什么。有谁能够帮助我?

+0

支票帐号/电邮和使用来自获取相应的用户名数据库表。在$ display_name变量中从数据库表中获取数据。 –

+0

未定义的函数重定向::到右边? –

回答

1

检查登录页面中使用的登录ID /电子邮件,并使用该数据库表中的相应用户名获取。在$ display_name变量中从数据库表中获取数据。

例如 -

$sql = "SELECT student_name FROM student_table where stduent_id = ".$userID; 
$display_name = mysqli_query($conn,$sql); 

你也可以做到这一点使用session 分配用户名来的SessionID和使用会话ID,您可以获取的是登录的用户的其他数据。

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()*/ 
}