2012-11-10 2 views
0

나는 노출 값으로 연도를 사용해야하는 스크립트를 작성 중입니다. 이 정보는 데이터베이스에 저장되며이를 제거해야하지만 문제는 아닙니다. 나는 몇 년 동안 주요 가치로 드러나는 목록을 만들어야한다. 코드 작업 중이었지만 항상 오류가 발생했습니다.CodeIgniter - 중첩 된 foreach - 연도별로 데이터 표시

컨트롤러 :

$data['dbdata'] = $this->DBdata->serve_val('pc_year'); 
foreach ($data['dbdata']->result() as $data) 
{ 
    $data['sheet'] = $this->DBdata->serve_val('pc'); 
    foreach ($data['sheet']->result() as $sht) 
    { 
     $data['vdata'][$data->idyr][$sht->idpc]['name'] = $sht->name; 
     $data['vdata'][$data->idyr][$sht->idpc]['properties'] = $sht->properties; 
    } 
} 

보기 :

foreach ($dbdata->result() as $data) 
{ 
    echo $data->year."<br>"; 
    foreach ($sheet->result() as $sht) 
    { 
     echo $vdata[$data->idyr][$sht->idpc]['name']."<br>"; 
     echo $vdata[$data->idyr][$sht->idpc]['properties']."<br>"; 
     echo "<br>"; 
    } 
} 

가 오류 :

A PHP Error was encountered 

Severity: Notice 

Message: Undefined offset: 1 

방법을 제대로 할 수?

+0

. 너는 그것을 덮어 쓴다. – Rooster

답변

1

당신은 당신이 변수 이름을

컨트롤러를 재 할당 캔트로, 컨트롤러를 변경해야

$data['dbdata'] = $this->DBdata->serve_val('pc_year'); 
foreach ($data['dbdata']->result() as $result) 
{ 
    $result['sheet'] = $this->DBdata->serve_val('pc'); 
    foreach ($result['sheet']->result() as $sht) 
    { 
     $data['vdata'][$result->idyr][$sht->idpc]['name'] = $sht->name; 
     $data['vdata'][$result->idyr][$sht->idpc]['properties'] = $sht->properties; 
    } 
} 

보기 : 당신이 당신의 변수를 데이터 외에 무언가를 명명 시도해야

foreach ($dbdata->result() as $data) 
{ 
    echo $data->year."<br>"; 
    foreach ($sheet->result() as $sht) 
    { 
     echo $vdata[$data->idyr][$sht->idpc]['name']."<br>"; 
     echo $vdata[$data->idyr][$sht->idpc]['properties']."<br>"; 
     echo "<br>"; 
    } 
}