2012-01-24 35 views
-1

OK,我通过数据库教程去,并最终结束了以下内容:变量混错

function index() { 
    $this->load->model('dataModel'); 

    $data['rows'] = $this->dataModel->getAll();  
    $data = array('title' => 'NKADD Calendar of Events', 'main_content' => 'pages/contact'); 
    $this->load->view('template/main', $data); 

} 

我得到错误,我相信这是与$ data数组/变量中获得困惑,但我不知道如何解决它!

这是视图页面,顺便说一句

foreach ($rows as $r) { 
    echo '<h1>' . $r->title . '</h1>'; 
} 

达到一个错误查看的页面

A PHP Error was encountered 
Severity: Notice 
Message: Undefined variable: rows 
Filename: pages/contact.php 

任何Assitance什么时候?

+0

和错误是? –

+0

请分享错误。错误消息帮助我们帮助您。 –

+0

你有什么错误? –

回答

1

好了,你不用添加到$data阵列,变量数组,而是做这样的事情:

$data = array(
    'rows' => $this->dataModel->getAll(), 
    'title' => 'Your title', 
    'main_content' => 'your main content value', 
); 

或添加元素array,如下:

$data['title'] = 'Your title'; 
// so on 

这样你就可以访问$ title和$ rows,并且o在模板中的瓦尔。

+0

这样做的伎俩......我看到它是什么我不理解......感谢清理它! – ClaytonDaniels

3

您混合起来$数据[ '行'] = “东西” 和$数据= “东西”,使用

$data['rows'] = $this->dataModel->getAll();  
$data[] = array('title' => 'NKADD Calendar of Events', 'main_content' => 'pages/contact'); 

通过在分配$数据=阵列( '....')第二行你已经将新数据分配给$数据,所以旧值已经消失。

尝试这样的事情在你的模型

//foreach($q->result() as $row)              
//{ 
//$data[] = $row; 
//} 
//return $data; 
return $q->result(); 
+0

这仍然产生了错误...不知道为什么,因为看起来正确和我明白我做错了什么。错误是遇到了PHP错误,严重性:注意,消息:未定义变量:main_content,文件名:template/main.php,行号:37 – ClaytonDaniels

+0

根据我上面的示例,main_content变量位于另一个数组中。 $数据[0] [ 'main_content']。你可以给我你的代码,你试图获得变量main_content。 –

+0

这里是数据模型: '类的DataModel延伸CI_Model { \t \t 功能GETALL(){ \t \t $ Q = $这个 - > DB->的get( '数据'); \t \t \t 如果\t($ Q-> NUM_ROWS()> 0){ \t \t \t的foreach($ Q->结果()作为$行){ \t \t \t \t $数据[] = $行; \t \t \t} \t \t \t return $ data; \t \t} \t} }' 控制器(房间工作从上述应答码) '类联系延伸是CI_Controller { 功能指数(){ \t \t $这 - >负载>模型(”数据模型'); \t \t \t $ \t数据=阵列( '行'=> $这 - > dataModel-> GETALL(), '标题'=> 'NKADD活动日程', 'main_content'=> '页/接触') ; \t \t $ this-> load-> view('template/main',$ data); \t} }' – ClaytonDaniels