我有以下代码来显示我的应用程序中当前登录的用户。奇怪的是在奇怪的情况下,当用户从一个页面浏览到另一个页面时,登录用户的用户名更改为数据库中的另一个用户。注销并重新登录然后会显示当前用户名。
<? 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>
<? } ?>
任何可能导致事情的想法?
我可以确认这两个用户是在同一天但在不同的位置登录的。
答案 0 :(得分: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>
<? } ?>