sanzhixiong86 发表于 2010-5-23 12:25:56

模型穿过来的数据怎么在view里显示(在线等)

我在模型里查询数据库库以后返回一个function select()
        {
                $this->load->database();
                $query=$this->db->query("select * from message");
                /*foreach ($query->result_array() as $row)
                {
                   echo $row['title']."<br>";
                   echo $row['message'];
                   echo "<hr>";
                }*/
                return $query->result();
        }
然后我在控制器里面有一个方法是这样的
function getdata()
        {
                $this->load->model('index_model');
                $data=array($this->index_model->select());
                $this->load->view('chakan',$data);
        }
为什么我的视图chakan在里面收不到数据

sanzhixiong86 发表于 2010-5-23 12:36:54

问题已经得到解决是因为传过来的数据是一个对象类型

sanzhixiong86 发表于 2010-5-23 12:48:41

大侠们还是没有彻底解决在控制器中用foreach循环然后用$row->title是可以的,但是为什么发送到视图中的时候用foreach同样的方法为什么就不行了,请哪位大侠帮小弟讲解一下错误代码如下
A PHP Error was encountered
Severity: Notice

Message: Undefined variable: data

Filename: views/chakan.php

Line Number: 1

A PHP Error was encountered
Severity: Warning

Message: Invalid argument supplied for foreach()

Filename: views/chakan.php

Line Number: 1

visvoy 发表于 2010-5-23 13:12:12

无码。。。。。。。。

sanzhixiong86 发表于 2010-5-23 13:23:03

视图
<?php
/*
控制器程序
*/
class Login extends Controller
{
        function Login()
        {
                parent::Controller();
        }
        //构造
        function index_view()
        {
                $this->load->view('index');
        }
        //成功页面的
        function show()
        {
                $this->load->model('index_model');
                $this->index_model->inter();
                $this->load->view('chenggong');
                //$this->index_model->select();
        }
        function getdata()
        {
                $this->load->model('index_model');
                $data=$this->index_model->select();
                echo $data;
                $this->load->view('chakan',$data);
        }
}
?>
模型
<?php
class Index_model extends Model
{
        function Index_model()
        {
               parent::Model();
        }
        function inter()
        {
                $this->load->database();
                $title=$_POST['title'];
                $message=$_POST['message'];
                $this->db->query("INSERT INTO `book`.`message` (`id` ,`title` ,`message`) VALUES ('NULL' , '$title', '$message')");
        }
        //查询
        function select()
        {
                $this->load->database();
                $query=$this->db->query("select * from message");
                return $query->result();
        }
}
?>
视图代码
<?php foreach($data as $row):?>

title<p><?php echo $row->title;?></p>
<br>
message<br>
<p><?php echo $row->message;?></p>
<hr>
<?php endforeach;?>

sanzhixiong86 发表于 2010-5-23 13:31:10

我看了一下api总算是解决了
<?php
class Blog extends Controller {

function index()
{
$data['todo_list'] = array('Clean House', 'Call Mom', 'Run Errands');

$data['title'] = "My Real Title";
$data['heading'] = "My Real Heading";

$this->load->view('blogview', $data);
}
}
?>
重要的是给个名字$data['todo_list']然后在到前台显示就没问题了

Hex 发表于 2010-5-23 14:19:52

楼主的问题手册都有详细说明,如果仔细看几分钟就能解决了。

sanzhixiong86 发表于 2010-5-23 20:11:51

恩恩,HEX说的对
页: [1]
查看完整版本: 模型穿过来的数据怎么在view里显示(在线等)