huangjinzt 发表于 2010-4-22 14:16:40

高手帮我看看,刚用不会

我在模型里的是
//查出表中所有数据
function get_info(){
      $query = $this->db->query("select * from mes");
      return $query->result();
}
控制器中调用的方法是
//调用模型中get_info方法,把返回值送到视图中去
function index(){
   $this->load->model("modelname");
   $data['info'] = $this->modelname->get_info()
   $this->load->view("index",$data);
}

视图中是
<?php

   foreach($info as $row){
      $row->name;
}
?>

问题来了,比如我表中有3笔数据,这样在视图中显示出来的都是name这个字段中的值,我想在视图中跟 while($row=mysql_fetch_array($query))这种效果,我循环一次能把一笔数据中的titlename   content 输出来,然后在循环第2次,把第二笔再循环出来,   试过几种方法,都不行,还请高手们看看我在 MVC中应该怎么写,才能产生这种效果。

lcnphp 发表于 2010-4-22 14:16:41

<?php

   foreach($info as $row){
      echo $row['name'].'&nbsp;'.$row['title'].'&nbsp;'.$row['content'].'&nbsp;';
}
?>

huangjinzt 发表于 2010-4-22 14:33:43

回复 2# lcnphp


   请问下,这样的话是不是 假如输出name ,他会一次性遍历出所有 name,我想就是跟while一样,我循环一次 把数据库中第一条留言的 nametitleconetnt输出来,第二次循环吧数据库中第二条留言的nametitlecontent 输出来,就是这样一直下去,您看在MVC中怎么写能达到这样的效果,如果把视图中的foreach用while代替,那MC   中怎么写?

lcnphp 发表于 2010-4-22 14:49:30

mysql_fetch_array($query) 每执行一次,指针就自动往下移一位,直到移到没有数据为止,而我们的$info是已经把你想要的所有数据都提取好了的,所以用while实现不了,只能用foreach了。弱弱地问一下,你为什么那么钟情于while呢?

huangjinzt 发表于 2010-4-22 15:00:45

回复 4# lcnphp
我想用while做循环他循环一次我就把第一条的留言信息输出来而foreach是一次性输出来的,它不能把信息分割开。你看有没有其他的办法把信息分隔开呢??

lcnphp 发表于 2010-4-22 15:04:21

回复 5# huangjinzt


    foreach比while更加方便,你不会用而已。方便的话+我qq 378107001
页: [1]
查看完整版本: 高手帮我看看,刚用不会