1

我在这里遗漏了一些东西,我无法通过控制器将变量通过模型传递到视图。

我正在接收: 网站在检索网站时遇到错误。它可能因维护而停机或配置不正确。 目前。

如果我删除第二个 $this->load->model('testingsearch'); 然后我收到以下错误消息:

遇到 PHP 错误

严重性:通知

消息:未定义的属性:HW::$testingsearch

文件名:控制器/hw.php

行号:63

模型:

<?php

class TestingSearch extends Model
{
function Messages()
{
    parent::Model();
}

function getMessages($id)
{
    $this->db->distinct();
    $this->db->select('*');
    $this->db->where('id', $id);
    $result = $this->db->get('HWC');

    if (!$result) {
        return false;
    } else {
        return $result;
        echo $result;
    }
}
}
?>

控制器:

<?php

class HW extends CI_Controller {

function Thiscontroller()
{
  parent::Controller();
  $this->load->database(); // This should be autoloaded

  $this->load->model('testingsearch');
}


function id($id='') {
       $this->load->model('testingsearch');
         $data['records'] = $this->testingsearch->getMessages($id);

   $this->load->view('searchresults', $data);

}

}

看法:

<ul>
<?php foreach ($records->result() as $row) { ?>
<li><?php echo $row->id; ?></li>
<li><?php echo $row->ModelName; ?></li>
<li><?php echo $row->Color; ?></li>
<? } ?>
</ul>
4

3 回答 3

2

试试这个:请更改 ::::::

型号代码:

function getMessages($id)
{
    $this->db->distinct();
    $this->db->select('*');
    $this->db->where('id', $id);
    $result = $this->db->get('HWC');

    return $result->result();
}

查看代码:-

<ul>
<?php foreach ($records as $row) { ?>
<li><?php echo $row->id; ?></li>
<li><?php echo $row->ModelName; ?></li>
<li><?php echo $row->Color; ?></li>
<? } ?>
</ul>

它将解决您的问题.......

于 2013-03-07T07:19:28.233 回答
0

您没有向控制器发送任何内容。只有您发送指示符,无论模型函数返回真还是假。返回对象

模型:

Class TestingSearch extends CI_Model
{
    function __construct()
    {
        parent::__construct();
    }

    function getMessages($id)
    {
        $this->db->distinct();
        $this->db->select('*');
        $this->db->where('id', $id);
        $result = $this->db->get('HWC');

        return $result->result();
    }
}

控制器:

class HW extends CI_Controller 
{
    function __construct()
    {
      parent::__construct();
      $this->load->database(); // This should be autoloaded

      $this->load->model('testingsearch');
    }

    function id($id='') 
    {
        $this->load->model('testingsearch');
        $data['records'] = $this->testingsearch->getMessages($id);
        $this->load->view('searchresults', $data);
    }
}

看法:

<ul>
    <?php foreach ($records->result() as $row) { ?>
        <li><?php echo $row->id; ?></li>
        <li><?php echo $row->ModelName; ?></li>
        <li><?php echo $row->Color; ?></li>
    <? } ?>
</ul>
于 2013-03-07T07:14:22.027 回答
0

您的模型的错误扩展

 // model should extend CI_Model
    class TestingSearch extends CI_Model{
        // then add additional constructor to call the model
        function __construct(){
              paret::__construct();
        }
    }


 // in controller
class HW extends CI_Controller {
 // change your call to the constructor by using
 function HW(){
     parent::CI_Controller()
     // then load the model
     $this->load->model('testingsearch');
  }
 }
于 2013-03-07T07:21:35.043 回答