Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Estaleiro

[Resolvido] Consulta a duas tabelas do MySql ao mesmo tempo

Recommended Posts

E aí pessoal blza!

como poderia fazer uma consulta a duas tabelas do mysql ao mesmo tempo, tenho o seguinte código, porém não esta me retornando nada e nenhum erro, os campos aparecem em branco.

 

include_once("template/conMysql.php");//crio a conexão com BD
$id_pedido = $_GET["id_pedido"];//resgato o valor base passado para consulta nas duas tabelas
$ped = "SELECT p.*, c.* FROM pedidos p, clientes c WHERE id_pedido = '$id_pedido' AND c.cnpj = p.cnpj";//realiza a consulta, não sei se esta certo esse código
$exe_ped = mysql_query($ped) or die ("Erro ao executar a query clientes: ".mysql_error());//executa a consulta
	while($linha = mysql_fetch_array($exe_ped)){//varre a tabela coletando os dados
		$cliente = $linha["cliente"];
		$email = $linha["email"];			
		$endereco = $linha["endereco"];			
		$bairro = $linha["bairro"];			 
		$cnpj = $linha["cnpj"];			
		$cidade = $linha["cidade"];			
		$estado = $linha["estado"];			
		$cep = $linha["cep"];			
		$telefone = $linha["telefone"];	
		$data = $linha["data"];
	}

Conto com a vossa colaboração

abrs

Compartilhar este post


Link para o post
Compartilhar em outros sites

$ped = "SELECT p.*, c.* FROM pedidos as p JOIN clientes as c on c.cnpj = p.cnpj WHERE id_pedido = '$id_pedido'";

Desculpe se minha sintaxe estiver errada, mais no seu script ta faltando inner join, ta quase certo, co a parte do join e o cnpj que você verifica das 2 tabelas não fica no where, e sim no on, que é o critério do inner join

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dê um echo em $ped e rode diretamente no banco, veja se retorna o que você quer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

$ped = "SELECT p.*, c.* FROM pedidos as p JOIN clientes as c on c.cnpj = p.cnpj WHERE id_pedido = '$id_pedido'";

Desculpe se minha sintaxe estiver errada, mais no seu script ta faltando inner join, ta quase certo, co a parte do join e o cnpj que você verifica das 2 tabelas não fica no where, e sim no on, que é o critério do inner join

 

Blza João, tentei com sua sintaxe, mais me retornou esta mensagem:

 

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/wwwrede/public_html/admin/arquivos/ver_pedido.php on line 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dê um echo em $ped e rode diretamente no banco, veja se retorna o que você quer.

 

William eu dei o echo na variável que executa o $ped, porém ele retornou dando um erro, pq ele não encontra o valor da consulta

Compartilhar este post


Link para o post
Compartilhar em outros sites

não sou muito bom com inner join maios vamos tentar de outro jeito pra ver se vai


$ped = "SELECT p.* FROM pedidos as p INNER JOIN clientes as c on c.cnpj = p.cnpj WHERE p.id_pedido = '$id_pedido'";


Deu na mesma brother, o aviso é o mesmo!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui resolver esse problema, não sei pq "cargas d'água" tava dando isso aí, eu tava fazendo o código no dreamweaver, passei para o notepad++ e converti para UTF-8 (SEM BOM), pq o meu servidor é linux, qdo passei deu certo.

Agradeço pela atenção.

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.