rocosta89 0 Denunciar post Postado Setembro 30, 2014 Boa tarde, Preciso de uma ajuda, não sou especialista em Php e Mysql, e estou com dificuldades para resolver o problema abaixo: Tenho 3 tabelas no mysql (form, calls, lista_ven), a primeira tabela me mostra o id da ligação, pegando esse id e buscando na segunda tenho o id do vendedor, pegando esse id do vendedor e buscando na terceira tabela descubro o nome do vendedor, Qual a melhor forma para o php abaixo? Gostaria que ficasse assim Id_lig id_vend name 38 6 Jose <?php $con=mysqli_connect("localhost","root","xxxxxxxx","xxxx_xxxx"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $result1 = mysqli_query($con,"select id_lig from form where value like '%venda%';"); $result2 = mysqli_query($con,"select id_ven from calls where id_lig like "%$result1%";"); $result3 = mysqli_query($con,"select name from lista_vend where id like "%$result2%";"); while($row = mysqli_fetch_array($result1, $result2, $result3)) { echo $row['id_lig']. " " . ['id_ven']. " " . ['name']. " "; echo "<br>"; } mysqli_close($con); ?> Agradeço a ajuda! Compartilhar este post Link para o post Compartilhar em outros sites
allex_carvalho 124 Denunciar post Postado Setembro 30, 2014 Essas tabelas tem ligação entre elas? A forma correta seria com INNER JOIN. Compartilhar este post Link para o post Compartilhar em outros sites
rocosta89 0 Denunciar post Postado Setembro 30, 2014 A unica ligação é que estão dentro da mesma database. Elas foram feitas uma em cada época, e o que quero é justamente achar o nome do vendedor pelo id da ligação, porem na tabela de que me mostra o status "venda" só vem o id da ligação, por isso uma tabela tem que usar o resultado de uma para buscar em outra. Pesquisei sobre o INNER JOIN e não entendi muito bem. Consegue me mostrar mais ou menos como aplicaria nesse caso? Obrigado pela resposta. Compartilhar este post Link para o post Compartilhar em outros sites
allex_carvalho 124 Denunciar post Postado Setembro 30, 2014 Vamos inventar um teste aqui: vendedor id nome ligacao id id_vendedor hora_inicial hora_final SELECT * FROM `ligacao` INNER JOIN `vendedor` ON `ligacao`.`id_vendedor` = `vendedor`.`id` Compartilhar este post Link para o post Compartilhar em outros sites
rocosta89 0 Denunciar post Postado Setembro 30, 2014 Olá Allex, Fiz conforme você me falou e nada: SELECT *FROM calls INNER JOIN form ON 'calls'.'id_ven' = 'form'.'id_lig'; Segue abaixo minhas tabelas e como chego no resultado que quero, porem queria isso automatizado, 1) Quando pesquiso em form o valor '%venda%' o mysql me mostra que as chamadas 2 e 35 resultaram em vendas, 2) Quando pesquiso em calls as ligações com o id "2" (que eu sei que foi uma venda) me mostra o id_ven, 3) Pesquiso o id_ven na tabela lista_vend e me mostra o nome do vendedor, mysql> select id_lig from form where value like '%venda%'; +----------+ | id_lig | +----------+ | 2 | | 35 | +----------+ 2 rows in set (0.00 sec) mysql> select id_ven from calls where id=2; +----------+ | id_ven | +----------+ | 4 | +----------+ 1 row in set (0.00 sec) mysql> select name from lista_vend where id=4; +-------+ | name | +-------+ | rodrigo | +-------+ 1 row in set (0.00 sec) Esses dois id's em vermelho gostaria que buscassem de acordo com o resultado do anterior, Grato! Compartilhar este post Link para o post Compartilhar em outros sites