Ir para conteúdo
Biel.

[Resolvido] usar uma query para listar/exibir registro de duas tabelas

Recommended Posts

Boa noite a todos. Direto ao ponto. Pessoal gostaria de listar/exibir registro de duas tabelas na mesma query

tab_aprendiz_01
id  nome
1   joao
2   pedro
3   josé

tab_aprendiz_02
id  carro
1   gol
2   corsa
3   fusca

...

EX 1 abaixo exibe na tela este resultado

joao
pedro
josé

...

Na query abaixo temos tab_aprendiz_01. Estou tentando obter o resultado abaixo colocando na mesma query tab_aprendiz_02 

joao
pedro
josé 
gol
corsa
fusca

...

<?php  
$sql = mysqli_query($con, "SELECT * FROM tab_aprendiz_01 "); 
while($linha = mysqli_fetch_array($sql)){
$nome  = $linha['nome'].'<br>';
//$carro = $linha['carro'].'<br>';
?> 
<table width="200" border="1">
  <tr>
    <td>
<?php echo $nome ;?> 
    </td>
  </tr>
 <?php } ?>
</table>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro amigo Biel, saudações...

 

Para trazer dados de 2 tabelas distintas, você precisa fazer relacionamento entre as tabelas.

 

Um pequeno exemplo abaixo:

<?php
        //Traz o Código do Produto
        $codProdClie = $produtoClie;

        $sql_pegaAtivos = "SELECT cl.clienteId, cl.razaoSocial, cl.faturaMinimo,
                                  cr.cotaRespId, cr.cotaRespQtde, cr.cotaRespVlrUnit,
                                  cr.cotaRespMarca, cr.codProdClie, cr.cotaRespObs, 
                                  cr.apres_unid, cr.clientes_clienteId, cr.cotaRespStatus,
                                  cr.cotacaoItens_cotaItensId, cr.cotaNumero, 
                                  cr.cotaRespCompra, cr.cotaRespComenta
                             FROM cotacaoResposta cr
                       INNER JOIN clientes AS cl ON cl.clienteId = cr.clientes_clienteId 
                            WHERE cr.cotaNumero = :cotaNumero
                              AND cr.codProdClie = :codProdClie
                         ORDER BY cr.cotaRespVlrUnit ASC ";  

        try{
         $query_pegaAtivos = $conecta->prepare($sql_pegaAtivos);                    
         $query_pegaAtivos->bindValue(':cotaNumero',$cotaNumero,PDO::PARAM_STR);         
         $query_pegaAtivos->bindValue(':codProdClie',$codProdClie,PDO::PARAM_STR);                                
         $query_pegaAtivos->execute();

         $resultado_pegaAtivos = $query_pegaAtivos->fetchAll(PDO::FETCH_ASSOC);
         $count_pegaAtivos = $query_pegaAtivos->rowCount(PDO::FETCH_ASSOC);

       }catch(PDOexception $error_pegaAtivos){
        echo 'Erro ao pegar ativos';
      }

      foreach($resultado_pegaAtivos as $resAtivos){              
             $cotaRespId         = $resAtivos['cotaRespId'];     
             $cotaRespQtde       = $resAtivos['cotaRespQtde'];     
             $cotaRespVlrUnit    = $resAtivos['cotaRespVlrUnit'];
             $cotaRespStatus     = $resAtivos['cotaRespStatus'];
             $cotaRespMarca      = $resAtivos['cotaRespMarca'];     
             $cotaRespObs        = $resAtivos['cotaRespObs'];
             $cotaRespCompra     = $resAtivos['cotaRespCompra'];
             $cotaRespComenta    = $resAtivos['cotaRespComenta'];
             $cotaNumero         = $resAtivos['cotaNumero'];
             $codProdClie        = $resAtivos['codProdClie'];
             $apres_unid         = $resAtivos['apres_unid'];
             $clientes_clienteId = $resAtivos['clientes_clienteId']; 
             $razaoSocial        = $resAtivos['razaoSocial'];  
             $faturaMinimo       = $resAtivos['faturaMinimo'];     
      }
?>     

 

Espero ter ajudado.

 

Cesar

Compartilhar este post


Link para o post
Compartilhar em outros sites

no caso dele acredito que um UNION ALL resolva.

pois não tem relacionamento entre as linhas, ele só quer retornar todas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Biel.
      Pessoal no link abaixo temos um menu accordion. Estou tentando obter o mesmo resultado usando function exibe_e_oculta (){}  ao invés de  addEventListener como faço?
       
      menu accordion
    • Por Biel.
      Direto ao ponto. Pessoal quando clico no menu A , o conteúdoA fica visível. Gostaria que ao clicar no menu A o conteúdoA ficasse invisivel  e quando clicasse novamente  ficasse visivel.
      Gostaria que o menu B tivesse o mesmo resultado que menu A , mas que funcionasse assim:
      Quando menuB receber um click gostaria que exibisse o conteudoB  e  ocultasse o conteudoA 
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <style> h1{ padding:10px 20px; background:#D49F00; color:#434343; font-size:24px;} .conteudo { display:none; background-color:#D4DF00; margin:4px 0px 10px 0px;} </style> <script> $(document).ready(function(){ $("h1").click(function(){ $(this).next('.conteudo').show(); }); }); </script> <div class="aprendiz" > <h1 >menu A</h1> <div class='conteudo'> conteudo do menu A </div> </div> <!-- --------------------------------------------------- --> <div class="aprendiz "> <h1 >Menu B</h1> <div class='conteudo '> conteudo do menu B </div> </div>  
    • Por Biel.
      Direto ao ponto. Pessoal no 1º select ao selecionar o item Audi , apareçe no 2º select o item audiVerde. Até aqui tudo bem
      O problema é quando em seguida decido selecionar o item BMW . Gostaria de saber por que o item do 2º select não carrega para bmwAzul
      Nota: Pessoal quero deixar os dois selects visivel juntamente com os options value e não embutido no código javascript. Obrigado!
       
      1º select <select id="mySelect1" size="1" onchange="myFunction1()"> <option value=""></option> <option value="Audi" >Audi</option> <option value="BMW" >BMW</option> </select> 2º select <select id="mySelect2" size="1" style="width:100px;" > <option value=""></option> <option value="audiVerde" class="aprendiz" style="display:none;" >audiVerde</option> <option value="bmwAzul" class="aprendiz" style="display:none;">bmwAzul</option> </select> ...
      <script> function myFunction1() { var x = document.getElementById("mySelect1").value; if(x==''){ document.getElementsByClassName("aprendiz")[0].style.display = "none"; document.getElementsByClassName("aprendiz")[1].style.display = "none"; } else if(x=='Audi'){ document.getElementsByClassName("aprendiz")[0].style.display = "block"; document.getElementsByClassName("aprendiz")[1].style.display = "none"; } else if(x=='BMW'){ document.getElementsByClassName("aprendiz")[0].style.display = "none"; document.getElementsByClassName("aprendiz")[1].style.display = "block"; } } </script>
       
    • Por Biel.
      Direto ao ponto: Pessoal o codigo abaixo esta funcionando normalmente. Quero resolver apenas uns detalhes, é o seguinte: No select A
      ao selecionar o item camisa por EX gostaria que no select B exibisse somente dois itens (camisaP e camisaM)  e não todos os itens 
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("select").on("change",function(){ if($('#id_select_a').val()==''){ $("#id_select_b").val(""); } //------------------------------------------------ else if($('#id_select_a').val()=='camisa'){ $("#id_select_b").val("camisaP"); } //------------------------------------------------ else if($('#id_select_a').val()=='bermuda'){ $("#id_select_b").val("bermudaP"); } //------------------------------------------------ else if($('#id_select_a').val()=='blusa'){ $("#id_select_b").val("blusaP"); } //------------------------------------------------ }); }); </script> select A <select name="roupas" id="id_select_a" required> <option value=""></option> <option value="camisa">camisa</option> <option value="bermuda">bermuda</option> <option value="blusa">blusa</option> </select> select B <select name="tamanho" id="id_select_b" required > <option value=""></option> <option value="camisaP" >camisaP</option> <option value="camisaM" >camisaM</option> <option value="bermudaP" >bermudaP</option> <option value="bermudaM" >bermudaM</option> <option value="blusaP" >blusaP</option> <option value="blusaM" >blusaM</option> </select>  
    • Por Biel.
      Boa noite a todos. Direto ao ponto. Pessoal, gostaria que select A e select B ficasse visivel e somente os itens do select B ficasse invisivel. Uma vez resolvido está etapa gostaria que:
      ao selecionar valor1 exibisse automaticamente o valor gol   e   ocultasse  o valor camisa ou
      ao selecionar valor2 exibisse automaticamente o valor camisa   e   ocultasse o valor gol
      Pessoal gostaria de resolver está tarefa com Jquery e não javascript. Obrigado!
       
      <script type="text/javascript" src="//code.jquery.com/jquery-1.11.0.js"></script> <!--<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>--> <script type='text/javascript'> //$(document).ready(function(){ $(window).load(function(){ $("#valor1 , #valor2").hide(); alterarValor = function (){ if($('#ao_selecionar').val()==1){ $("#valor1").show(), $("#valor2").hide(); } //-------------------------------------------- else if($('#ao_selecionar').val()==2 ){ $("#valor1").hide(), $("#valor2").show(); } //-------------------------------------------- } //-------------------------------------------- }); </script> <form action="executou.php" method="post" name="form1" id="form1"> Select A <select name="hhh" id="ao_selecionar" required onChange="alterarValor()"> <option value="" ></option> <option value="1" required> carro</option> <option value="2" required> roupa</option> </select> <br />----------------------------------------------------- <br /> Select B <select name="yyy" > <option value="gol" id="valor1" >gol</option> <option value="camisa" id="valor2" >camisa</option> </select> <input type="submit" value="enviar" /> </form>  
×

Informação importante

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