Codeigniter 代码点火器

Codeigniter 代码点火器,codeigniter,Codeigniter,我在我的网站上使用codeigniter,但我遇到了一个问题,我编写了一个从不同表返回行的脚本。但试图获取非对象的属性时出现写入错误。这是我的密码。哪里有问题 $this->db->select('*'); $this->db->from('orders'); $this->db->where('order_id',$order_id); $array_keys_values = $this->db->

我在我的网站上使用codeigniter,但我遇到了一个问题,我编写了一个从不同表返回行的脚本。但试图获取非对象的属性时出现写入错误。这是我的密码。哪里有问题

      $this->db->select('*');
      $this->db->from('orders');
      $this->db->where('order_id',$order_id);
      $array_keys_values = $this->db->get();
      $row = $array_keys_values->row();

      $this->db->select('*');
      $this->db->from('pacients');
      $this->db->where('pacient_account_id',$row->order_pacient_id);
      $array_keys_values2 = $this->db->get();
      $row2 = $array_keys_values2->row();

      $this->db->select('*');
      $this->db->from('doctors');
      $this->db->where('doctor_account_id',$doctor_id);
      $array_keys_values3 = $this->db->get();
      $row3 = $array_keys_values3->row();
试一试


没有返回任何行。使用带有num_rows()>0的if语句检查

这是错误您的数据库配置中是否启用了
db_debug
?似乎
$this->db->get()
返回false,这可能意味着生成的查询无效(没有这样的表/列)等等。是的,我将db\u debug设置为TRUE。但是我的查询没有问题,之所以会出现这个错误,是因为结果是以二维数组而不是对象的形式返回的。见下文。
$this->db->select('*');
$this->db->from('orders');
$this->db->where('order_id',$order_id);
$array_keys_values = $this->db->get();    
if ($array_keys_values->num_rows() > 0) {
    foreach ($array_keys_values->result() as $row) {
       // now you can work with $row
    }
}

$this->db->select('*');
$this->db->from('pacients');
$this->db->where('pacient_account_id',$row->order_pacient_id);
$array_keys_values2 = $this->db->get();
if ($array_keys_values2->num_rows() > 0) {
    foreach ($array_keys_values2->result() as $row2) {
        // now you can work with $row2
    }
}

$this->db->select('*');
$this->db->from('doctors');
$this->db->where('doctor_account_id',$doctor_id);
$array_keys_values3 = $this->db->get();
if ($array_keys_values3->num_rows() > 0) {
    foreach ($array_keys_values3->result() as $row3) {
        // now you can work with $row3
    }
}