如何在帐户页面中包含已记录的用户名

时间:2016-03-15 04:24:22

标签: php html

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

我不太明白为什么。有人能帮助我吗?

2 个答案:

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