我正在使用 HTML 表单指南中的 CodeIgniter + 注册/登录脚本。我想在导航栏中显示用户名(登录为:[用户名])。所以在控制器中我添加了一个变量:
$data['login'] = '';
$this->load->view('templates/header', $data);
$this->load->view('templates/nav', $data);
$this->load->view('pages/'.$page, $data);
$this->load->view('templates/footer', $data);
在 nav.php 中:
<?php
if ($login!='')
echo "Logged in as: ".$login;
?>
在登录后加载的访问控制页面中:
$login = $fgmembersite->UserFullName();
这是:
function UserFullName()
{
return isset($_SESSION['name_of_user'])?$_SESSION['name_of_user']:'';
}
用户名在访问控制页面中正确返回,但不在导航栏中。我相信这是因为加载视图的顺序。在templates/nav
加载之前,变量$data['login']
可能正在根据我在控制器中声明的内容被清除。有解决方法吗?