Php codeigniter中的动态页面控制

Php codeigniter中的动态页面控制,php,codeigniter,Php,Codeigniter,在我的CI项目中,我希望使用完整的动态页面控件。因此,我有两个控制器方法,它们加载php文件。模型控件的查询基于url段。根据url和数据库结果,视图php文件中自动生成的所有页面输出,index.php文件除外 这条路对吗 控制器 public function index() { $data['title'] = "Index"; $data['nav'] = $this->content_model->get_index_nav(); //TODO $this-

在我的CI项目中,我希望使用完整的动态页面控件。因此,我有两个控制器方法,它们加载php文件。模型控件的查询基于url段。根据url和数据库结果,视图php文件中自动生成的所有页面输出,index.php文件除外

这条路对吗

控制器

public function index()
 {
  $data['title'] = "Index";
  $data['nav'] = $this->content_model->get_index_nav(); //TODO

  $this->load->view('templates/header', $data);
  $this->load->view('templates/nav', $data);
  $this->load->view('templates/nav_pict', $data);
  $this->load->view('pages/aktualis', $data);
  $this->load->view('templates/footer', $data);
 }
 public function view($page)
 {
  $page = 'content';

  $this->load->helper('text');
  $this->load->helper('url'); 

  $page = lcfirst(convert_accented_characters(urldecode($page)));

  if ( ! file_exists('application/views/pages/'.$page.'.php'))
  {
   show_404();
  }

  $data['title'] = ucfirst($page); // Capitalize the first letter
  $data['nav'] = $this->content_model->get_nav();
  $data['content'] = $this->content_model->get_content();

  if(empty($data['content']))
  {
   show_404();
  }

  $this->load->view('templates/header', $data);
  $this->load->view('templates/nav', $data);
  $this->load->view('pages/'.$page, $data);
  $this->load->view('templates/footer', $data);
 }
型号(每个菜单在数据库中都有一个内容。创建新的子菜单时,必须添加内容)

路由

$route['404_override'] = '';
$route['/:any/(:any)'] = 'pages/view/$1';
$route['(:any)'] = 'pages/view/$1';
$route['Index'] = 'pages/index';
$route['default_controller'] = 'pages/index';

您使用的CodeIgniter很好,不需要任何结构修改。

这与blob图像有什么关系?另外,您有一个硬编码的$page=“content”,我相信它不会出现……还有,这与mysqli有什么关系?我只看到一个mysql调用,与mysqli无关。mysql调用甚至不应该存在:
$this->db->where()
将为您进行转义。问题是什么?什么不起作用?人们期望什么?这和预期有什么不同?他在询问是否正确使用了CodeIgniter。
$route['404_override'] = '';
$route['/:any/(:any)'] = 'pages/view/$1';
$route['(:any)'] = 'pages/view/$1';
$route['Index'] = 'pages/index';
$route['default_controller'] = 'pages/index';