我想學習codeigniter(下面的書),但不明白爲什麼網頁出來空。codeigniter新手問題
我控制器
class Welcome extends Controller {
function Welcome()
{
parent::Controller();
}
function index()
{
$data['title'] = "Welcome to Claudia's Kids";
$data['navlist'] = $this->MCats->getCategoriesNav();
$data['mainf'] = $this->MProducts->getMainFeature();
$skip = $data['mainf']['id'];
$data['sidef'] = $this->MProducts->getRandomProducts(3, $skip);
$data['main'] = "home";
$this->load->vars($data);
$this->load->view('template');
}
的觀點是:
<--doctype declaration etc etc.. -->
</head>
<body>
<div id="wrapper">
<div id="header">
<?php $this->load->view('header');?>
</div>
<div id='nav'>
<?php $this->load->view('navigation');?>
</div>
<div id="main">
<?php $this->load->view($main);?>
</div>
<div id="footer">
<?php $this->load->view('footer');?>
</div>
</div>
</body>
</html>
現在我知道該模型是經過重新回到正確的變數,但頁面出現完全空白。我希望至少看到一個錯誤,或基本的HTML結構,但頁面只是空的。此外,即使我修改它,控制器也不起作用,如下所示:
function index()
{
echo "hello.";
}
我在做什麼錯? 一切工作,直到我對模型做了一些更改 - 但即使我刪除所有這些新的更改,頁面仍然是空白..我真的很困惑!
感謝, P.
我隔絕,讓我的問題的功能。 那就是:
function getMainFeature()
{
$data = array();
$this->db->select("id, name, shortdesc, image");
$this->db->where("featured", "true");
$this->db->where("status", "active");
$this->db->orderby("rand()");
$this->db->limit(1);
$Q = $this->db->get("products");
if ($Q->num_rows() > 0)
{
foreach($Q->result_arry() as $row)
{
$data = array(
"id" => $row['id'],
"name" => $row['name'],
"shortdesc" => $row['shortdesc'],
"image" => $row['image']
);
}
}
$Q->free_result();
return $data;
}
我很確信,必須有一個語法錯誤的地方 - 但仍然不明白爲什麼它不顯示任何錯誤,即使我已經設置了使用error_reporting E_ALL在索引函數..
Q-> result_arry() - right是result_array()。 (或者它只是一個錯字?) – DCrystal 2010-03-19 01:44:00
well spotted :)這是代碼中的一個實際錯誤,但是我已經發現它自己並沒有解決問題.. – Patrick 2010-03-20 12:21:07
如果你已經孤立到一個模型中的函數不要發佈,所以我們可能會發現錯誤。 – Eric 2010-03-19 02:55:09