Jump to content


Photo

Dúvida Complexa Com Php/mysql


  • Faça o login para participar
9 replies to this topic

#1 silverandersilver

silverandersilver

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 30/10/2008, 15:17

Boa tarde pessoal. Sou novo aqui no fórum e gostaria muito da ajuda de vocês, visto que realmente não consegui solucionar o problema.

Tenho 3 tabelas no banco de dados (usuario, comentarios e amigos). Quero que o usuário X veja todas as novas mensagens dos comentários dos amigos.

Estou usando algo como:
Tabela usuários
----------------------------------
| id_usuario | nome_usuario |
----------------------------------
| 1			  |			   joao |
| 2			  |			 maria |
| 3			  |			   jose |
----------------------------------

Tabela mensagem
-----------------------------------------------------|
| id_mensagem | id_usuarios | mensagem	   |
-----------------------------------------------------|
|1					| 1			   | produto show   |
|2					| 2			   | eca produto	 |
|3					| 3			   | gostei			  |
|4					| 1			   | é show mesmo |
-----------------------------------------------------|

Tabela amigos
---------------------------------------------|
| id_amigos | id_usuarioa | id_amigo   |
---------------------------------------------|
| 1			  | 1			  | 2				|
---------------------------------------------|

Ou seja, quero que o João veja as mensagens da Maria ( já que são amigos ) e as dele próprias, o José não é amigo de ninguém então vê as próprias mensagens. E a Maria não é amiga do João, apesar dele achar que são amigos :)

A dúvida é o seguinte. Consegui fazer com que "João" visse as próprias mensagens, mas não as mensagens de Maria.

Usei a seguinte query:

SELECT t1.id_usuario, t1.nome_usuario, t2.id_mensagem, t2.id_usuarios, t2.mensagem
FROM usuarios AS t1
INNER JOIN mensagem AS t2 ON t2.id_usuarios = t1.id_usuario
WHERE t1.nome_usuario='joao'

Quando rodo esse query, funciona legal, mostra todas as mensagens de "João", mas não consigo fazer para mostrar as mensagens dos amigos do "João", como as mensagens de "Maria", por exemplo.

Esse query realmente está me matando... :boxing:

Não sei nem se consegui explicar direito. :assobio:

Obrigado.

#2 dddj

dddj

    Normal

  • Usuários
  • 112 posts
  • Sexo:Masculino
  • Localidade:Campo Grande

Posted 30/10/2008, 15:30

Olha até imagino porque esteja morrendo, pq não tem como alguem ser e ao mesmo tempo não ser amigo de alguem, ele não vai ler a mensagem dela pq vc disse q eles não são amigos, mas depois vc diz que são.

quero que o João veja as mensagens da Maria ( já que são amigos ) e as dele próprias

E a Maria não é amiga do João, apesar dele achar que são amigos .


Consegui fazer com que "João" visse as próprias mensagens, mas não as mensagens de Maria.


A dúvida é o seguinte. Consegui fazer com que "João" visse as próprias mensagens, mas não as mensagens de Maria.



Cara isso ta muito confuso ou vc está super indeciso, decide o João é ou não amigo de Maria. Maria é ou não amiga do João, sou só amigo de maria de ela for minha amiga certo. Nossa minha cabeça ja ta confusa . Decide ai e posta direitinho aki pra nós . Falou

Edição feita por: dddj, 30/10/2008, 15:32.

Djavan Loureiro - SEO Marketing - Search Engine Optimization - Otimização de Sites
Coloque seu site no topo dos sistemas de busca - Projeto SEM - Visitem o site.

#3 silverandersilver

silverandersilver

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 30/10/2008, 15:35

hehehehee.....

João é amigo de Maria, pois ele colocou ela na lista de amigos, mas Maria não colocou João na lista. Como "ele é amigo dela" mas "ela não é amiga dele", ele pode ler as mensagens dela, mas ela não pode ler as mensagens dele... :lol:

#4 Dudu

Dudu

    Viva la vida

  • Usuários
  • 1437 posts
  • Sexo:Masculino
  • Localidade:Uberlândia - MG
  • Interesses:PHP

Posted 30/10/2008, 15:39

Sua dúvida está ligada a consulta ou ao código PHP?

Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Moderador


Twitter: HostCheap


#5 silverandersilver

silverandersilver

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 30/10/2008, 15:43

Está ligado à consulta do banco de dados

#6 Dudu

Dudu

    Viva la vida

  • Usuários
  • 1437 posts
  • Sexo:Masculino
  • Localidade:Uberlândia - MG
  • Interesses:PHP

Posted 30/10/2008, 15:52

Tópico movido.
Até mais ^_^

Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Moderador


Twitter: HostCheap


#7 dddj

dddj

    Normal

  • Usuários
  • 112 posts
  • Sexo:Masculino
  • Localidade:Campo Grande

Posted 30/10/2008, 16:15

Agora to entendendo, mas vou discordar de vc, nisso aqui:

Como "ele é amigo dela" mas "ela não é amiga dele", ele pode ler as mensagens dela, mas ela não pode ler as mensagens dele...


Eu acho que joão só pode ler as mensagens de Maria se ela considerar ele amigo dela, certo. É como funciona hoje no orkut, então fica sem controle , por exemplo vamos dizer que a meninha lindinha tem um perfil e o Tião das coves ambem tem, ai o Tião vai la e diz q é amigo da menina lindinha e começa a ver as mensagens dela sem ela autorizar ou algo assim. como diria o FHC "Assim não dá, Assim não pode." .

Edição feita por: dddj, 30/10/2008, 16:19.

Djavan Loureiro - SEO Marketing - Search Engine Optimization - Otimização de Sites
Coloque seu site no topo dos sistemas de busca - Projeto SEM - Visitem o site.

#8 silverandersilver

silverandersilver

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 30/10/2008, 17:07

Mas mesma que eu fizesse dessa forma, ainda sim não saberia como colocar a query. Vamos supor que João é amigo de Maria e Maria também é amiga de João, como ficaria a query?

#9 dddj

dddj

    Normal

  • Usuários
  • 112 posts
  • Sexo:Masculino
  • Localidade:Campo Grande

Posted 30/10/2008, 19:12

Tenha este sql aki


SELECT t1.id_usuario, t1.nome_usuario, t2.id_mensagem, t2.id_usuarios, t2.mensagem
FROM usuarios AS t1
INNER JOIN mensagem AS t2 ON t2.id_usuarios = t1.id_usuario
LEFT JOIN amigos AS t3 ON t3.id_amigo = t2.id_usuario
WHERE t1.nome_usuario='joao'

Edição feita por: dddj, 30/10/2008, 19:18.

Djavan Loureiro - SEO Marketing - Search Engine Optimization - Otimização de Sites
Coloque seu site no topo dos sistemas de busca - Projeto SEM - Visitem o site.

#10 silverandersilver

silverandersilver

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 30/10/2008, 20:44

Olá

Continua aparecendo somente as mensagens do usuário logado. (Aparece as mensagens somente do "joão").




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq