0

コントローラからビューに配列を渡そうとしていますが、それができず、理由がわかりません。

モデル、コントローラー、ビューがあります。

モデル:

<?php

class Modelo_bd extends CI_Model
{
    public function datos()
    {
        $cnb=$this->db->query("SELECT * from anuncios");
        return $cnb->result();  
    }
} 

?>

コントローラー:

if($this->modelo_usuarios->puede_entrar($usr)) 
{
   $this->load->model("modelo_bd");
   $cbd=$this->modelo_bd->datos();
   $this->load->view('datos',$cbd);

   return true;
}

景色:

<?php
echo $cbd->titulo_a;
echo $cbd->contenido;
?>

エラーはビューにあります。

A PHP Error was encountered
Severity: Notice
Message: Undefined variable: cbd

A PHP Error was encountered
Severity: Notice
Message: Trying to get property of non-object

配列の場合、$ cbd変数がビューで認識されないのはなぜですか?どうすれば修正できますか?

ありがとう。

4

3 に答える 3

1

コントローラ内:

if($this->modelo_usuarios->puede_entrar($usr)) 
{
   $this->load->model("modelo_bd");
   $cbd=$this->modelo_bd->datos();
   $this->load->view('datos', array('cbd' => $cbd);       
   return true;
}

2番目のパラメーターは配列である必要があります。

モデルで使用できます:

public function datos()
{
    return $this->db->query("SELECT * from anuncios");
}

とビューで:

<?php
foreach ($cdb->result() as $item) {
  echo $item->titulo_a;
  echo $item->contenido;
}
?>
于 2013-02-26T12:08:49.620 に答える
0

あなたはこのようにそれをするべきです

if($this->modelo_usuarios->puede_entrar($usr)) 
{
   $this->load->model("modelo_bd");
   $data['cbd'] =   $this->modelo_bd->datos();
   $this->load->view('datos',$data);
}
于 2013-02-26T12:43:20.240 に答える
0

あなたはむしろそうすべきではありません:

コントローラー:

if($this->modelo_usuarios->puede_entrar($usr)) 
{
   $this->load->model("modelo_bd");
   $data['cbd']=$this->modelo_bd->datos();
   $this->load->view('datos',$data);

       return true;
}

景色:

<?php
   foreach($cbd as $key => $row){
   echo $row->titulo_a;
   echo $row->contenido;
}

?>

私はこれがうまくいくと思います、あなたの選択。

于 2013-02-26T16:29:37.180 に答える