2013-02-27 6 views
0

두 개의 다른 테이블에서 데이터를 가져 오는 데 문제가 있습니다. 먼저 주어진 이름으로 모든 주소를 가져 오려고 시도하고 있습니다 (테이블에있는 이름이 tom 인 모든 주소를 선택하십시오). 그런 다음 주소를 사용하여 다른 테이블 (table2)에서 해당 주소를 찾아서 number의 모든 데이터를 가져옵니다.Zend 다중 테이블에서 데이터 선택

CONTROLLER :

this->table = new Address(); 
$getaddress = $this->table->getAddress($name); //grabbing all address associated with a given name 

$address = $getaddress->toArray(); 

foreach ($addy as $address) 
{ 
    this->table2 = new Number(); 
    $numbers = $this->table2->getNumber($address['numberColumn']); 
    $this->view->numbers = $numbers->toArray(); 
} 

답변

0

난 당신이 tabletable2 사이의 관계를 정의하는 데 조언을 것입니다 내 코드보다 더 좋은 방법이 있나요. 물론 첫 번째 테이블과의 관계가 될 table2에 외래 키가 필요합니다. 이 문서를 공부하십시오. http://framework.zend.com/manual/1.12/en/zend.db.table.relationships.html

+0

본인은 질문의 핵심 부분으로 이동하기 위해이 부분을 생략했습니다. 표와 표 2는 공통 필드 주소가있는 서로 다른 표입니다. 이름을 입력하고 테이블에서 주소를 검색 한 다음 모든 주소를 조회하고 모든 주소를 포함하는 Table2의 번호를 검색하려고합니다. 따라서 기본적으로 address1, address2, address3 등을 반복하고 fetchAll (// 주소를 가져 오거나 주소 1 또는 주소 2 또는 주소 3 등) –

+0

두 테이블에 대해 db diagram 또는 sql create statment를 제공 할 수 있습니까? 어쩌면 테이블 구조 나 관계를 바꿀 필요가있을 것입니다 ... – konradwww

관련 문제