Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL] Wyświetlanie rekordów
sadistic_son
post
Post #1





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Mam 2 tabele w bazie:

Wiadomosci:
id_w
od_kogo
do_kogo
tekst

Userzy:
id_u
nazwa

Kiedy user wysyła wiadomość (np. user o nazwie AAA i id=1 do usera BBB o id=2) to w tabeli wiadomości zostanie dodany rekord o wartości pól: od_kogo=1 i do_kogo=2:
  1. INSERT INTO wiadomosci VALUES( NULL , '1' , '2' , 'tekst' )


Moje pytanie brzmi jak wyświetlić te wiadomości tak aby zamiast id userów pojawiły się ich nazwy. Normalnie nie miałem z tym problemów bo robiłem to tak:
  1. SELECT userzy.nazwa , wiadomosci.tekst FROM wiadomosci , userzy WHERE userzy.id = wiadomosci.od_kogo
Ale tutaj jest problem bo przecież pola od_kogo i do_kogo oba są wartościami id z tabeli userzy. Jak skonsrtuować zapytanie aby SQL nie zgłupiał?


Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sadistic_son
post
Post #2





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Muszę przyznać, że naprawdę super mi to wytłumaczyłeś. Dzięki wielkie!! Masz podwójny 'Pomógł' (IMG:style_emoticons/default/smile.gif)

EDIT: Mam jescze tylko małe pytanie do tego. Tabela wiadomosci zawiera jeszcze kolumne 'przeczytane' i jesli user do ktorego byla wiadomosc przeczytal juz ja to wartosc = 1 jesli nie to 0. Ja chcialbym wyswietlic tylko te rekordy ktore sa nieprzeczytane i dotycza usera o nazwie $zalogowany. Więc zmodyfikowałem trochę Twoje zapytanie:
  1. 1.
  2. SELECT w.id_w, u1.nazwa AS od, u2.nazwa AS do, w.tekst FROM wiadomosci w LEFT JOIN userzy u1 ON w.od_kogo = u1.u_id LEFT JOIN userzy u2 ON w.do_kogo = u2.u_id WHERE wiadomosci.przeczytane='0' ORDER BY w.id_w DESC
I wyswietla sie blad ze zle zapytanie:( co jest nie tak?

I jak zmodyfikować zapytanie aby wyświetlało tylko wiadomości skierowane do gostka o nazwie np. admin?


Ten post edytował sadistic_son 23.08.2009, 14:33:31
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 20:04