我有这样的登录表单
登录到应用程序,它会显示如下菜单
直到我点击某个菜单才行,然后显示
这是我点击的链接的控制器
我认为keuangan
已经在菜单上了,但是为什么当我点击菜单的某个链接时keuangan
没有出现?
function index()
{
$data['title'] = 'QB Cash Advance Settlement';
$this->load->view('menu',$data);
$this->load->view('v/vcas');
}
这是c_menu
控制器
function index()
{
$data['title'] = "QB Dashboard";
$data['jabatan'] = "Keuangan";
$this->load->view('menu',$data);
$this->load->view('body');
}
这是menu_view
<div id ="user">Selamat datang, <?php echo $jabatan; ?></div>
登录控制器
function login()
{
$username = $this->input->post('username');
$jabatan = $this->input->post('jabatan');
$this->form_validation->set_rules('username','Username','alpha_numeric|trim|required|xss_clean');
$this->form_validation->set_rules('password', 'Password', 'trim|required|xss_clean|callback_check_database');
if($this->form_validation->run() == FALSE)
{
$this->load->view('login');
}
else
{
if($jabatan == 'keuangan')
{
redirect('c_menu','refresh');
}
else if ($jabatan == 'hd')
{
echo $jabatan;
}
else
{
echo $jabatan;
}
}
我是否需要在每个控制器/索引中声明$data['title'] = 'keuangan'
?
答案 0 :(得分:1)
您绑定到视图中的数据将不会保留。因此,当您第一次加载菜单时,它就在那里,因为您在控制器中设置了它:
$data['jabatan'] = "Keuangan";
$this->load->view('menu',$data);
但是当你点击链接时,它会转到另一个控制器。
$data['title'] = 'QB Cash Advance Settlement';
$this->load->view('menu',$data);
在将$data['jabatan']
绑定到视图之前,未在此控制器中设置 $data
,因此这是未定义的原因。