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

时间:2014-06-19 10:31:03

标签: php mysql

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

我使用HTML表格指南中常用的注册/登录脚本 fg_membersite.php和其他一些文件。 (login.php,register.php等)。

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

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

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

但是当我尝试显示用户名(UserName)时,它什么都没有。 (页面显示,但我基本上得到欢迎!而不是欢迎{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>

已解决:

我只需要为此添加“用户名”:

 $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'";

谢谢大家!!!

3 个答案:

答案 0 :(得分:1)

不应该这样:

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;

答案 1 :(得分:0)

它应该是??: -

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

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

答案 2 :(得分:0)

看起来像代码中的拼写错误:

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