Ir para conteúdo

POWERED BY:

Arquivado

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

Mahhbatera

Select em mais de uma tabela

Recommended Posts

Galera é o seguinte! estou fazendo um sistema de posts na minha rede.

 

tenho a tabela home_post com os campos

 

id_home_post,

id_usuario( foreign key da tabela usuario),

post,

data,

 

e também tenho a tabela usuario com todos os campos

id_usuario,

nome,

sobrenome,

 

 

estou fazendo o seguinte SELECT:

 <?php

      include("conexao.php");
      $query = mysql_query("SELECT post,data FROM home_post where id_usuario = '".$_SESSION['id']."'  order by data desc ") or die(mysql_error());

     //faz um looping e cria um array com os campos da consulta
     while($array = mysql_fetch_array($query)){
    //mostra na tela o nome e a data de nascimento

     echo $array['nome']." ".$array['post']." ".$array['data']."<br>"; 

					}
     ?>

 

dai depois estou dando echo e mostrando os campos no documento.. meu problema é que eu quero mostrar também o Nome e o sobrenome do usuário que está postando, mas o nome e o sobrenome estão na tabela Usuario, e o select que eu to fazendo é na tabela home_post..

 

como que eu faço pra dar um select nas duas tabelas e mostrar tudo ?!

Compartilhar este post


Link para o post
Compartilhar em outros sites

existem essencialmente 3 maneiras de se fazer isso:

 

1. sub-select na sua query

2. select em 2 tabelas separadas no from

3. join, que é o recomendado no seu caso

 

 



	SELECT			p.post,

					`p.data`,

					u.nome,

					u.sobrenome

	FROM				home_post p

	INNER JOIN		usuario u

	ON				p.id_usuario = u.id_usuario



 

acho que é isso, tem que testar ai, nao executei aqui

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, quando eu executo, na pagina mostra assim: Column 'id_usuario' in where clause is ambiguous

 

e agora?

 

meu código esta assim:

<?php
include("conexao.php");
$query = mysql_query("SELECT p.post,p.data, u.nome, u.sobrenome FROM home_post p INNER JOIN usuario u ON p.id_usuario = u.id_usuario where id_usuario = '".$_SESSION['id']."'  order by data desc ") or die(mysql_error());


while($array = mysql_fetch_array($query)) {


echo $array['post']." ".$array['data']."".$array['nome']."<br>"; 

																}
?>

 

alguem sabe porquee?!

Compartilhar este post


Link para o post
Compartilhar em outros sites
SELECT p.post,p.data, u.nome, u.sobrenome 
FROM home_post p INNER JOIN usuario u ON p.id_usuario = u.id_usuario 
where u.id_usuario = '".$_SESSION['id']."'  
order by p.data desc

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.