Retorno de dados de duas tabelas apos clicar no campo buscar
Olá pessoal , tou tentando cria um sistema de busca, que vai funcionar da seguinte forma
digito o CPF do cliente no campo input, e logo depois ao clicar em buscar ele me retorna os dados da tabela cliente
quando busco dados apenas de uma tabela, da certo. Porém nao tou conseguindo buscar de duas tabela, como faço para solucionar esse problema?
Abaixo segue o código da consulta de apenas uma tabela ,que ta dando certo, porem tou precisando pegar dados de outras tabelas
$cpfbusca = $_POST['cpfbusca'];
$sql =("SELECT *FROM cliente WHERE cpf LIKE '%".$cpfbusca."%'")or die(mysqli_error());
query = mysqli_query($conecta, $sql);
$row = mysqli_num_rows($query);
if($row > 0){
while ($linha = mysqli_fetch_array($query)){
$cpf = $linha['cpf'];
$nome = $linha['nome'];
$data = $linha['data'];
$email = $linha['email'];
echo "<b>Cpf:</b>$cpf";
echo "<br>";
echo "<b>Nome:</b>$nome";
echo "<br>";
echo "<b>Data:</b>$data";
echo "<br>";
echo "<b>Email:</b>$email";
}
}else{
echo 'Desculpe nenhum usuario encontrado com esse nome';
}
digito o CPF do cliente no campo input, e logo depois ao clicar em buscar ele me retorna os dados da tabela cliente
quando busco dados apenas de uma tabela, da certo. Porém nao tou conseguindo buscar de duas tabela, como faço para solucionar esse problema?
Abaixo segue o código da consulta de apenas uma tabela ,que ta dando certo, porem tou precisando pegar dados de outras tabelas
$cpfbusca = $_POST['cpfbusca'];
$sql =("SELECT *FROM cliente WHERE cpf LIKE '%".$cpfbusca."%'")or die(mysqli_error());
query = mysqli_query($conecta, $sql);
$row = mysqli_num_rows($query);
if($row > 0){
while ($linha = mysqli_fetch_array($query)){
$cpf = $linha['cpf'];
$nome = $linha['nome'];
$data = $linha['data'];
$email = $linha['email'];
echo "<b>Cpf:</b>$cpf";
echo "<br>";
echo "<b>Nome:</b>$nome";
echo "<br>";
echo "<b>Data:</b>$data";
echo "<br>";
echo "<b>Email:</b>$email";
}
}else{
echo 'Desculpe nenhum usuario encontrado com esse nome';
}
Odenilson Marques
Curtidas 0
Respostas
Moisés
08/01/2016
Odenilson, os dados das duas tabelas serão exibidos na mesma pagina? A segunda tableta tem alguma referencia com a primeira, tipo uma chave estrangeira?
caso sim vc pode usar um inner join para buscar dados em duas ou mais tabelas ao mesmo tempo, dá uma olhada neste link e ver se pode te ajudar http://www.mysqltutorial.org/mysql-inner-join.aspx
caso sim vc pode usar um inner join para buscar dados em duas ou mais tabelas ao mesmo tempo, dá uma olhada neste link e ver se pode te ajudar http://www.mysqltutorial.org/mysql-inner-join.aspx
GOSTEI 0
Odenilson Marques
08/01/2016
Valeu Moisés Problema resolvido
GOSTEI 0
Claudio Lopes
08/01/2016
outra dica, like não é performático, ele vai fazer a comparação caractere por caractere da string e fazer a comparação. Se o seu campo só possui CPF e na sua consulta tem que ser igual, não há porque usar um like concorda?
GOSTEI 0
Moisés
08/01/2016
outra dica, like não é performático, ele vai fazer a comparação caractere por caractere da string e fazer a comparação. Se o seu campo só possui CPF e na sua consulta tem que ser igual, não há porque usar um like concorda?
Concordo com vc Din, já o like vai trazer valores parecidos e não valores iguais ao que ele quer buscar na base.
GOSTEI 0
Odenilson Marques
08/01/2016
Obrigado pessoal consegui resolver
GOSTEI 0