如何将包含路径文件的变量作为参数传递给codeigniter中的控制器
How to pass variable that contains path file as parameter to controller in codeigniter
有人可以帮我解决这个问题吗?我是 codeigniter 和 stack overflow 的新手。
所以我有这个控制器来呈现我的网站页面:
class Pages extends CI_Controller {
public function view($page = 'home') {
if ( ! file_exists(APPPATH.'/views/pages/'.$page.'.php')) {
show_404();
} else {
$this->load->view('templates/menu');
$this->load->view('pages/'. $page);
}
}
此方法加载放置在 'pages' 目录中的视图,它适用于该目录中的所有视图。现在菜单视图包含一个 link 应该加载 'test' 视图放置在 pages/admin/test.php.
<a href="<?php echo site_url('pages/view/admin/test')?>">
无论如何,这个锚点不起作用,因为菜单视图错误地传递给控制器的 URI。
我怎样才能要求我的控制器它必须加载该视图?
非常感谢所有帮助我的人!
如果包含所需文件,您可以仔细检查位置
if ( ! file_exists(APPPATH.'/views/pages/'.$page.'.php') &&
! file_exists(APPPATH.'/views/pages/admin/'.$page.'.php')) {
show_404();
} else {
$view = file_exists(APPPATH.'/views/pages/'.$page.'.php');
$viewadmin = file_exists(APPPATH.'/views/pages/admin/'.$page.'.php');
$this->load->view('templates/menu');
if ($view) {
$this->load->view('pages/'. $page);
} else {
$this->load->view('pages/admin/'. $page);
}
}
但就个人而言,我会在第二种方法中将那些检查子文件夹文件是否存在的方法分开,以避免名称冲突问题。
有人可以帮我解决这个问题吗?我是 codeigniter 和 stack overflow 的新手。 所以我有这个控制器来呈现我的网站页面:
class Pages extends CI_Controller {
public function view($page = 'home') {
if ( ! file_exists(APPPATH.'/views/pages/'.$page.'.php')) {
show_404();
} else {
$this->load->view('templates/menu');
$this->load->view('pages/'. $page);
}
}
此方法加载放置在 'pages' 目录中的视图,它适用于该目录中的所有视图。现在菜单视图包含一个 link 应该加载 'test' 视图放置在 pages/admin/test.php.
<a href="<?php echo site_url('pages/view/admin/test')?>">
无论如何,这个锚点不起作用,因为菜单视图错误地传递给控制器的 URI。 我怎样才能要求我的控制器它必须加载该视图? 非常感谢所有帮助我的人!
如果包含所需文件,您可以仔细检查位置
if ( ! file_exists(APPPATH.'/views/pages/'.$page.'.php') &&
! file_exists(APPPATH.'/views/pages/admin/'.$page.'.php')) {
show_404();
} else {
$view = file_exists(APPPATH.'/views/pages/'.$page.'.php');
$viewadmin = file_exists(APPPATH.'/views/pages/admin/'.$page.'.php');
$this->load->view('templates/menu');
if ($view) {
$this->load->view('pages/'. $page);
} else {
$this->load->view('pages/admin/'. $page);
}
}
但就个人而言,我会在第二种方法中将那些检查子文件夹文件是否存在的方法分开,以避免名称冲突问题。