用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2203|回复: 1
收起左侧

刚开始就没法做下去了

[复制链接]
发表于 2012-7-23 19:31:30 | 显示全部楼层 |阅读模式
Mhome.php(模型)
< ?php
    class Mhome extends Model{
      function __construct()
   {
      parent::Model();
  
   }
   function get_category()
   {
      $query = $this->db->query('select * from category');
   return $query->result();
   }
}

home.php(控制器)
< ?php
    class Home extends Controller{
    function __construct()
    {
        parent::Controller();
    }
    function index()
    {
   
        $this->load->model('Mhome');
     $date['category'] = $this->Mhome->get_category();
           $date['page_title'] = 'ci开发新闻发布系统';   
        $this->load->view('header',$date);
        $this->load->view('index');
        $this->load->view('footer');
    }
}

header.php(头部文件 )
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns="http://www.w3.org/1999/xhtml">
< head>
< meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
< title><?=$page_title?></title>
< ?foreach ($category as $row):?>   注:这里想循环输出category_name
< ?=$row->category_name?>
< ?endforeach;?>
< /html>

一运行就出现这种错误提示:
A PHP Error was encounteredSeverity: Notice
Message:  Undefined variable: category
Filename: views/header.php
Line Number: 6

A PHP Error was encounteredSeverity: Warning
Message:  Invalid argument supplied for foreach()
Filename: views/header.php
Line Number: 6
那位大哥能解说一下 先谢拉
发表于 2012-7-23 21:33:42 | 显示全部楼层
1.在CI中,类的声明,首字母必须大写,类的引用,首字母不必大写。
2.错误提示已经很清楚了,既控制器的category,并未传递到视图中。原因见1
3.foreach时,如果可以,尽量判断一下比较好。
如:foreach ((array)$var as $key).

本版积分规则