严重性通知:未定义的偏移量

时间:2015-12-13 10:46:01

标签: codeigniter

通过一些更改,我得到了错误,这在原始的PHP工作正常,但在codeigniter我试图得到这个result_array一段时间(列表),但我不知道什么是替代对于codeigniter中的fetch_row。请帮助我以while (list($d, $sn, $s) = each($IDS-))行的方式解决这个问题。

型号:

 public function raw_attendance_Data() {
        $this->db->select('attnDate, TraineeID, Status');
        $this->db->from('tbl_attendance');
        $this->db->order_by('TraineeID');
        $query = $this->db->get();
        return $query->result_array();
    }

控制器:

public function rawAttendance(){
        $data['IDS'] = $this->AttendanceModel->raw_attendance_Data();
        $this->load->view('attendance/rawAttendance', $data);
    }

查看:

$curname='';
    $tdata = '';
      reset($IDS);
      while (list($d, $sn, $s) = each($IDS)) {
            if ($curname != $sn) {
                if ($curname) {
                    $tdata .= "<tr><td>$curname</td><td>" . join('</td><td>', $rowdata). "</td></tr>\n";
                }
                $rowdata = $emptyRow;
                $curname = $sn;
            }
            $rowdata[$d] = $s;
        }
    $tdata .= "<tr><td>$curname</td><td>" . join('</td><td>', $rowdata). "</td></tr>\n";

1 个答案:

答案 0 :(得分:0)

$query->result_array();返回一个数组,而不是一个对象。因此$IDS中的$IDS->fetch_row()是一个数组(非对象)。

我不明白,你在哪里获得函数fetch_row()

如果我理解你想要完成什么,那么这应该有用。

查看:

  $tdata = '';

  foreach($IDS as $row)
  {
    $curname = isset($row['TraineeID']) ? $row['TraineeID'] : "";
    $date = isset($row['attnDate']) ? $row['attnDate'] : "";
    $status = isset($row['Status']) ? $row['Status'] : "";
    if(!empty($curname){
        $tdata .= "<tr><td>$curname</td><td>$date</td><td>$status</td></tr>";
    }
  }