【发布时间】:2014-03-28 18:51:48
【问题描述】:
helow,我是 codeigniter 的新手。我想动态地将我的页面加载到我的视图中。这意味着,使用一个函数。 例如,我有 4 页主页、关于、联系方式、信息。在我的视图文件夹中,我创建了一个基本布局,其中包含所有这些页面的页眉和页脚。现在我想当我点击那些页面链接时它只是加载到内容正文而不加载整页。使用 CI 正常程序我可以做到。这是
function home(){
$data['main_content'] = 'home';
$this->load->view('template/layout', $data);
}
function about(){
$data['main_content'] = 'about';
$this->load->view('template/layout', $data);
}
但我想创建一个函数,例如,将此页面调用为单个函数,
function pageload($page){
}
此函数检查请求的文件是否已退出或不存在。如果存在,则加载页面,否则加载“找不到页面”404错误页面。我怎样才能做到...请帮助。
我的视图文件是:
<nav>
<ul class="sf-menu">
<li class="current"><?php echo anchor('home/index', 'Home');?></li>
<li><?php echo anchor('home/amenities', 'Room & Amenitis');?></li>
<li><?php echo anchor('home/reservations', 'Reservations');?></li>
<li><?php echo anchor('home/photos', 'Photographs');?></li>
<li><?php echo anchor('home/pakages', 'Pakages');?></li>
<li><?php echo anchor('home/explore', 'Explore');?></li>
<li><?php echo anchor('home/contact', 'Contact');?></li>
</ul>
</nav>
和控制器:
<?php
if (!defined('BASEPATH')) exit('不允许直接脚本访问');
class Home extends CI_Controller{
function __construct(){
parent::__construct();
}
function pageload($page){
$data['main_content'] = $page;
$this->load->view('template/layout', $data);
}
}
?>
【问题讨论】:
-
Codeigniter 已经做了你想做的一切。如果您没有控制器(或该控制器中的适当功能),它将生成 404 错误页面。而且您根本不需要编写任何代码。
-
我知道 Dwayne,但我的问题是如何使用单个函数加载我的所有页面。
-
那我不明白你的问题。也许你可以扩展它或提供一些更大的背景。
标签: codeigniter codeigniter-2 codeigniter-url codeigniter-routing codeigniter-form-helper