codeigniter让行无法正常工作

时间:2012-12-23 19:29:24

标签: php codeigniter

我一直在做关于CodeIgniter的教程。现在我只是从数据库中读取内容。我已经检查过我从db获得的东西是合法的。然后,我只需将查询结果发送到名为form的视图。现在我想在form中做的就是从查询中提取内容。我收到以下错误:

Severity: Notice

Message: Undefined index: Name

Filename: views/form.php

Line Number: 36

这是我的控制器代码:

function index()
    {
        $data['reason'] = '';
        $this->load->model('CRUD_Model');
        $data['query']= $this->CRUD_Model->Read('tertiarystudy','Name is not NULL');
        $this->load->view('form',$data);
    }

这是我的观看代码:

foreach ($query as $row) 
    {
        echo $row['Name'];

    }

4 个答案:

答案 0 :(得分:2)

尝试使用print_r结果,

  foreach ($query as $row) {
      echo '<pre>';
      print_r($row);
      echo '</pre>'; 

      // if you get result a array, format array is $row['namefield'].
      // if you get result a object, format object is $row->namefield.
      // if you not get any result, you must check code in controller n model again.
  }

答案 1 :(得分:1)

请在您的视图中尝试此操作..

foreach ($query as $row) 
    {
        echo $row[0]['Name'];

    }

答案 2 :(得分:1)

您的模型是否使用db->result()db->result_array()来获取数据?如果它是result(),那么您的行就是stdClass的实例。在这种情况下,请执行:

foreach($query as $row) {
    echo $row->Name;
}

答案 3 :(得分:1)

我认为这个示例代码很有用

<?php
class Test extends CI_Controller{
    function __construct(){
        parent::__construct();
        $this->load->database();
    }

    public function index(){
        $this->db->select('userid');
        $some = $this->db->get('users_key',1)->result_array();
        var_dump($some);
    }

    // result_array Output
    // array(1) { [0]=> array(1) { ["userid"]=> string(1) "1" } } 

    // result Output
    // array(1) { [0]=> object(stdClass)#15 (1) { ["userid"]=> string(1) "1" } } 


}