wangqiu1027 发表于 2009-5-19 10:48:25

新手求助!关于模板页头和页尾的调用问题

本帖最后由 wangqiu1027 于 2009-5-19 10:50 编辑

制作网站前台页面的时候,遇到一个问题:我将网页的头和尾分离出来,在模板中使用
<?php include('index_header_view.php');?>
方式来调用页头,但是这样做会产生一个问题,比如在页头中存在一个变量,内容是从数据库中提取的动态信息
假定现在又十几个网页模板都调用了同一个头文件
那么我就必须在调用这十几个模板的控制器方法中重复的从数据库中调用同一个数据,赋值到同一个变量中
比如,index_header_view.php中有一个变量 $title
方法fun1,fun2,fun3 调用的模板中都使用了这个头文件
那么各个控制器方法中就都要重复的取出来这个值
class Text extends Controller
{
function Test()
{
   parent::Controller();   
}

function fun1()
{
       $title = "123";
       $data['title'] = $title;
}

function fun2()
{
      $title = "123";
      $data['title'] = $title;

}
   function fun3()
{
      $title = "123";
      $data['title'] = $title;

}
}

我想知道对于这种情况,怎么样可以变的简单一些

caincheung 发表于 2009-5-19 11:47:45

Helper

caincheung 发表于 2009-5-19 11:49:47

本帖最后由 caincheung 于 2009-5-19 11:51 编辑

可能我的方法有点麻烦
自己写了一个Helper,读取远程文件。
在View里
<?php echo cevin_http_open(site_url('widget/header')); ?>

或者写到文件。然后读取调用

yz20sui 发表于 2009-5-19 11:58:54

扩展 控制器类 然后增加一个提取title的方法 get_title()

在你的 自定义控制器中 对应的地方使用 $this->get_title();

Hex 发表于 2009-5-19 12:51:37

这问题我刚在另一个帖子里回答了。。。。

http://codeigniter.org.cn/forums/viewthread.php?tid=2507&page=1&fromuid=2#pid12004

如果要在 header 或者 footer 里加入数据处理,应该使用 HMVC,看这个:
http://codeigniter.org.cn/forums/thread-1319-1-2.html

wangqiu1027 发表于 2009-5-19 14:26:33

谢谢大家的回复:D ,我已经找到了思路

spt119 发表于 2009-5-19 23:21:08

3# caincheung
你好。我和楼主的问题基本一样,就是页头和页尾,都有部分变量。页头中的CSS调用和js脚本,title的值等,都需要变量设定。页尾的更多。因此,如果单纯的在每个控制器里手动指定,代码量太大。
管理员提供了另外一种模式,但现在CI还没太搞懂,所以不敢贸然尝试,能否请您分享一下一下的解决方案和代码。
非常感谢。

zhoulei 发表于 2009-5-27 22:23:21

可以直接在view页面里
<?php $this->load->view("header.php");?>.
页: [1]
查看完整版本: 新手求助!关于模板页头和页尾的调用问题