登录后如何在会员页面显示全名?

Posted

技术标签:

【中文标题】登录后如何在会员页面显示全名?【英文标题】:How to display full name on memberpage after log in? 【发布时间】:2016-01-05 16:42:35 【问题描述】:

谁是代码,需要放在哪里,以显示具有会话用户名的登录用户的会话 fname 和 lname。

这是我的登录页面:

    <?php session_start();

//include config
require_once('includes/config.php');

//check if already logged in move to home page
if( $user->is_logged_in() ) header('Location: index.php');  

//process login form if submitted
if(isset($_POST['submit']))

$username = $_POST['username'];
$password = $_POST['password'];


if($user->login($username,$password)) 
    $_SESSION['username'] = $username;

    header('Location: memberpage.php');
    exit;

 else 
    $error[] = 'Погрешно корисничко име или лозинка, или вашиот акаунт не е активиран.';

这是我的会员页面:

<?php session_start(); 
require('includes/config.php'); 

//if not logged in redirect to login page
if(!$user->is_logged_in()) header('Location: login.php');  

//define page title
$title = 'Профил';

//include header template
require('layout/header.php'); 
?>

<div class="container">

<div class="row">

    <div class="col-xs-12 col-sm-8 col-md-6 col-sm-offset-2 col-md-offset-3">

             <h2>Добредојдовте: <?php print_r($_SESSION)
;?></h2>
            <p><a href='logout.php'>Logout</a></p>
            <p><a href='Update.php'>Update</a></p>
            <hr>

    </div>
 </div>


</div>

当使用此代码时 “打印_r($_SESSION)” 仅打印用户名和成员 ID。我厌倦了使用“$_SESSION['Fname']=$_POST['Fname'];”

【问题讨论】:

您声明了 $_SESSION['username'] = $username;。因此,在您的会员页面中,只需使用 ? @Chris G 没关系。但我需要显示用户的名字和姓氏。这在我的情况下不起作用 $_SESSION['Fname']=$_POST['Fname']; 【参考方案1】:

用户输入usernamepassword后,您需要从数据库中选择用户并将名字和姓氏输入session

在您的情况下,您应该编辑 login 方法。它应该返回当前用户的行。之后你需要把它发送到session

<?php session_start();

//include config
require_once('includes/config.php');

//check if already logged in move to home page
if( $user->is_logged_in() ) header('Location: index.php');  

//process login form if submitted
if(isset($_POST['submit']))

$username = $_POST['username'];
$password = $_POST['password'];


if($row = $user->login($username,$password)) 
    $_SESSION['username'] = $username;
    $_SESSION['firstname'] = $row['firstname'];
    $_SESSION['lastname'] = $row['lastname'];

    header('Location: memberpage.php');
    exit;

 else 
    $error[] = 'Погрешно корисничко име или лозинка, или вашиот акаунт не е активиран.';

在重定向后也总是使用exit

if(!$user->is_logged_in()) header('Location: login.php');exit;  

【讨论】:

还是不行。当我打印所有会话时,给我这个:Array([loggedin] => 1 [username] => vale1 [memberID] => 2 [email] => [Fname] =>) 我按照你说的编辑。 if($row = $user->login($username,$password)) $_SESSION['username'] = $username; $_SESSION['firstname'] = $row['firstname']; $_SESSION['姓氏'] = $row['姓氏'];不工作。

以上是关于登录后如何在会员页面显示全名?的主要内容,如果未能解决你的问题,请参考以下文章

终极会员注销无法使用 WPML

织梦DedeCMS会员登录或退出后如何直接跳转到首页

如何在会员网站上使用贝宝 IPN (PHP)

如何从登录页面隐藏标题和侧边栏并在登录后显示

如何在登录后重定向到我想要的页面并在成功登录后显示用户名

通过 Spring Security 和 CAS 登录后,如何在非安全 JSP 页面上显示登录用户详细信息?