当我在会话中调用它时,我无法让我的用户名显示在网站上。
索引页面上的代码是:
<h1>Users Home</h1>
Welcome <?php $user = $this->Session->read('Users.username');?>
我究竟做错了什么?
我还尝试了各种其他方式来调用它,然后得到不同的错误消息。
在您的代码中,您将 $user 设置为用户名的内容。但你没有打印它。
<h1>Users Home</h1>
Welcome <?=$this->Session->read('Auth.User.username')?>
这是缩写
<h1>Users Home</h1>
Welcome <?php print $this->Session->read('Auth.User.username'); ?>
As Hugo said you should do the following:
<h1>Users Home</h1>
Welcome <?php echo $this->Session->read('Auth.User.username'); ?>
If you are going to use it on more than one view, I would suggest you to add the following on AppController.
public function beforeFilter() {
$this->set('username', AuthComponent::user('username'));
// OR $this->set('username', $this->Session->read('Auth.User.username'));
}
And then on any of your view just use the variable $username to print the current username.
<?php echo $username; ?>
echo $this->Session->read('Auth.User.username');
或者,如果您使用的是 Cakephp 2.x,您可以AuthComponent::user('username')
在代码中的任何位置使用。
获取 $user 后,您应该执行 echo $user 或 print_r($user),您将打印出用户名。