2010-05-21 4 views
2

이 코드를 사용하여 데이터베이스에 연결하고 결과를 가져 왔습니다. 이 작업은 이미지 테이블에 대한 다른 쿼리로 작업하여 관련 이미지를 얻을 때까지 완벽하게 작동했습니다. 나는 OO 프로그래밍에 익숙하지 않다. 그래서 누군가가 ive가 잘못되어 나를 도와 줄 수 있기를 바랍니다.다른 제품에서 쿼리 한 후 한 테이블에서 관련 이미지 쿼리

$imagesql = 'SELECT * FROM ecom_product_images where id = ' . $row->id . ' AND primaryImage = "1"'; 

당신이 $id 변수 전에 선언 :

<?php 
    global $__CMS_CONN__; 

    $sql = "SELECT * FROM ecom_products"; 
    $stmt = $__CMS_CONN__->prepare($sql); 
    $stmt->execute(array($id)); 

    while ($row = $stmt->fetchObject()) { 

     $imagesql = "SELECT * FROM ecom_product_images where id = $row->id && where primaryImage = '1'"; 
     $imagestmt = $__CMS_CONN__->prepare($sql); 
     $imagestmt->execute(array($id)); 
     $imageName = $imagestmt->fetchObject(); 

     echo '<a href="'.URL_PUBLIC.$row->id.'">'.$row->productNm.'</a>'.$imageName; 

    } 
?> 

답변

0

는 SQL 쿼리를 수정?

코드에 오류가 있습니까?

당신의 primaryImage 열이 int 유형은 다음

primaryImage = 1 

enum 다음 그것을 확인하는 경우 쿼리

에 아포스트로피를 건너 뛸 경우.

+0

왜 downvote? 그러면 OP 코드의 오류가 해결됩니다. +1 –

+0

이것은 멋지다. 고마워. 얘들 아, 지금 당장 시험해보고. 신속한 대응에 감사드립니다. – Andy

+0

불행히도 이들 중 아무 것도 작동하지 않았습니다. – Andy

0

OO 프로그래밍은 필요 없지만 SQL은 필요합니다.

SELECT p.*, imageName 
FROM ecom_products p, ecom_product_images i 
WHERE p.id = i.id AND primaryImage = 1; 
+0

LEFT JOIN은 좋지 않나요? – hsz