2014-09-23 7 views
0

데이터베이스에서 rowcount를 반향시킬 쿼리를 실행하려고합니다. 현재는 모든 것이 아닌 마지막 하나만 보여줍니다. 누군가가 대신 하나의 모든 행을 표시하는 방법에 나를 도울 수 있습니까?mysql 테이블에서 모든 데이터에 액세스하는 데 문제가 있습니다.

$search = $_GET['pc']; 
$approved = 'Approved'; 
$live = 'Live'; 
$q = $handler->prepare("SELECT * FROM store WHERE pc = ? OR plus_1 = ? OR plus_2 = ? OR plus_3 = ? OR plus_4 = ?"); 
$q->bindParam(1, $search); 
$q->bindParam(2, $search); 
$q->bindParam(3, $search); 
$q->bindParam(4, $search); 
$q->bindParam(5, $search); 
$q->execute(); 
if($q->rowCount() > 0){ 
    while($r = $q->fetch()){ 
     $local_id = $r['user_id'].; 
    } 

    $q = $handler->prepare("SELECT * FROM users WHERE id = ? AND status = ?"); 
    $q->bindParam(1, $local_id); 
    $q->bindParam(2, $approved); 
    $q->execute(); 
    if($q->rowCount() > 0){ 
    while($r = $q->fetch()){ 
     $local_id_2 = $r['id'].; 
    } 

     $q = $handler->prepare("SELECT * FROM offers WHERE user_id = ? AND status = ? AND approved = ?"); 
     $q->bindParam(1, $local_id_2); 
     $q->bindParam(2, $live); 
     $q->bindParam(3, $approved); 
     $q->execute(); 



echo  $viewAll = $q->rowCount(); 

    } 
} 

사전에 모든 $의 local_id 및 local_id2하지만 첫 번째 ($ local_id) 에코 데이터의 모든 나머지는 단지 첫 번째에서 마지막 $의 lcoal_id을 메아리 .. 감사합니다 반향 시도합니다.

+0

'$ q-> rowCount()'를 덮어 씁니다. 변수 이름 또는 각 인스턴스에 대해 반향 출력 할 수있는 이름으로 저장하십시오. –

+0

'while 루프'->'while ($ r = $ q-> fetch()) {$ local_id = $ r [ 'user_id']]에서 결과를 덮어 쓰게됩니다.; }'/'while ($ r = $ q-> fetch()) {$ local_id_2 = $ r [ 'id'] ;; }'. 각 while 루프는 모든 결과가 아닌 마지막 결과 만 반환합니다. – Sean

+0

JayBlanchard var 이름을 변경하려고 시도했지만 해결하지 못했습니다. @Sean 어떻게 해결할 수있는 대안을 줄 수 있습니까? 감사합니다. 감사합니다. – user3833066

답변

0

임시 수정을 사용하여 필요한 모든 데이터를 포함하는 다른 테이블을 만들려고합니다.

관련 문제