2011-10-28 3 views
0

이 선택을 사용하고 있으며 데이터를 출력하는 동안 사용할 때 3 번 반복했습니다. 좋은 영혼이 나를 도울 수 있습니까? $ idr 변수는 고유합니다. 반복하지 마십시오.PHP/MYSQL이 선택은 echo에서 반복되는 3 개의 결과를 제공합니다 ... 왜?

$sqlRomaneio = 'SELECT clientes.id_cliente, 
          clientes.razao_social, 
          clientes.cpf_cnpj, 
          clientes.identidade_inscricao, 
          clientes.foto, 
          clientes.tipo_cliente, 
          romaneios.data_criacao, 
          romaneios.id_endereco_entrega, 
          romaneios.modo_entrega, 
          romaneios.custo_entrega_valor, 
          romaneios.custo_entrega_pago_por, 
          romaneios.modo_recebimento, 
          romaneios.custo_recebimento_valor, 
          romaneios.custo_recebimento_pago_por, 
          romaneios.quantidade_pecas, 
          romaneios.valor_total, 
          romaneios.finalizado 
        FROM clientes, romaneios, clientes_enderecos 
        WHERE romaneios.id_romaneio = '.$idr.''; 
+1

전체 PHP 코드 게시 ... –

+0

1) while 루프는 어떻게 생겼습니까? 2) MySQL에서 바로 실행할 때이 쿼리는 무엇을 반환합니까? – chesles

+0

두 번째 나머지 코드 요청. SQL 쿼리에서 "LIMIT 1"을 추가하여 첫 번째 일치하는 레코드로 결과를 제한 할 수 있습니다. 즉. ... 어디서 romaneios.id_romaneio = '. $ idr. '제한 1'; –

답변

1

두 지점 :

1 : 당신은 테이블 clientes_enderecos이 나와 있지만 아무것도 그것에서 선택되지되고 있으며,이 WHERE 절에 표시되므로이를 제거하지 않습니다.

2 : 당신은 일치하는 외래 키가 clientesromaneios에서 행을 제한하는 조항이 없습니다. 따라서 clientes의 각 행은 romaneios의 모든 행에 대해 한 번 나타납니다.

그래서 where 절에 다른 조건을 추가해야합니다.

관련 문제