0

我有以下代码在我的应用程序中显示当前登录的用户。奇怪的是,当用户从一个页面浏览到另一个页面时,登录用户的用户名会偶尔更改为数据库中的另一个用户。注销并重新登录然后显示当前用户名。

 <? if ($sf_user->isAuthenticated()){?>
  <div id="welcome">
   You are signed in as <strong><?php echo sfContext::getInstance()->getUser()->
   getGuardUser()->getName()?></strong> <a href="/logout" class="button">Logout</a>
  </div>
  <div class="clear"></div>
 <? } ?>

任何想法可能导致的事情?

我可以确认两个用户都在同一天登录但在不同的位置。

4

1 回答 1

1

$sf_user改为在您的视图中使用sfContext

像:

<? if ($sf_user->isAuthenticated()){?>
       <div id="welcome">
              You are signed in as <strong><?php echo $sf_user->getName()?></strong> <a href="/logout" class="button">Logout</a>
        </div>
        <div class="clear"></div>
<? } ?>
于 2012-09-17T12:49:33.187 回答