试图在配置文件成员区域显示成员的用户名


Trying to display the username of a member on a profile member area

我试图在成员页面上显示一个非常简单的用户名。我在这里搜索stackoverflow,但使用我发现没有工作。

我使用了HTML表单指南中非常常见的注册/登录脚本Fg_membersite.php和其他文件。(login.php, register.php等)。

当用户注册时,他选择了用户名、全名、电子邮件和密码。

当我尝试显示全名(FullUserName)和用户电子邮件(UserEmail)时它工作得很好。我正在使用这个:

<?= $fgmembersite->UserEmail(); ?>
<?= $fgmembersite->UserFullName(); ?>

但是当我尝试显示用户名(UserName)时,它什么也没有给出。(页面显示出来,但我基本上得到欢迎!,而不是Welcome {UserName}

我试着把这个添加到fg_membersite.php文件:

function UserName()
    {
        return isset($_SESSION['name_of_user'])?$_SESSION['username_of_user']:'';
    }

:

$row = mysql_fetch_assoc($result);
       $_SESSION['username_of_user']  = $row['username'];

这两个已经在文件中了:

$_SESSION['name_of_user']  = $row['name'];
$_SESSION['email_of_user'] = $row['email'];

而对于成员页,我尝试使用:

<?= $fgmembersite->UserName(); ?>
<? echo $_SESSION[ "username"]; ?>
<? var_dump($_SESSION[ "username"]); ?>

我的问题是,是否有解决方案?

在成员页中是这样设置的:

<?PHP
require_once("./include/membersite_config.php");
if(!$fgmembersite->CheckLogin())
{
    $fgmembersite->RedirectToURL("login.php");
    exit;
}
?>

 <li>Welcome <? echo $_SESSION['username_of_user']; ?>!
  <li class="active"><span class="pull-right"><a href='change-pwd.php'>Change password</a></span></li>
</ol>
 <span class="text-primary"><b></b></span>

解决:

我只需要加上"username":

 $qry = "Select name, email from $this->tablename where username='$username' and password='$pwdmd5' and confirmcode='y'";

像这样:

$qry = "Select username, name, email from $this->tablename where username='$username' and password='$pwdmd5' and confirmcode='y'";

谢谢大家!!

不应该是这样吗:

function UserName()
    {
        return isset($_SESSION['username_of_user'])?$_SESSION['username_of_user']:'';
    }

…如果它仍然没有返回任何值,说明会话变量没有设置(您是否设置了session_start()?),则转储整个数组以检查:

echo "<pre>".print_r($_SESSION,true)."</pre>";

你的问题是:

$qry = "Select name, email from $this->tablename where username='$username' and password='$pwdmd5' and confirmcode='y'";

您没有从数据库中选择用户名!

或者试试这个(来自pastebin的第381行):

$_SESSION['username_of_user']  = $username;

应该是这样吗??: -

$row = mysql_fetch_assoc($result);
       $_SESSION['username_of_user']  = $row['username'];
function UserName()
    {
        return isset($_SESSION['name_of_user'])?$_SESSION['username_of_user']:'';
    }

看起来像你代码中的一个错别字:

function UserName()
{
    return isset($_SESSION['name_of_user'])?$_SESSION['name_of_user']:'';
}