![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 2.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam taki problem. Otóż robie wiadomości prywatne tzn. PM i funkcjonalnością przypomina wiadomosci z Facebooka. Wytłumacze w czym problem: baza wygląda mniej wiecej tak: ID | ID_USER | ID_USER_SENDER | TEXT wiadomosci wysyłam w sposób taki iż id_user to identyfikator uzytkownika który dostaje wiadomosc, a id_user_sender to identyfikator użytkownika wysyłającego. baza po dodaniu kilku rekordów: ID | ID_USER | ID_USER_SENDER | TEXT 1 | 1 | 2 | tresc wiadomosc1 2 | 2 | 1 | tresc wiadomosc2 3 | 2 | 1 | tresc wiadomosc3 4 | 2 | 3 | tresc wiadomosc4 5 | 1 | 2 | tresc wiadomosc5 6 | 1 | 3 | tresc wiadomosc6 musze to pogrupować w sposób taki aby tylko moje wiadomosci byly dostepne dla mnie czyli id 1: ID | ID_USER | TEXT 1 | 1 | tresc wiadomosc5 - ostatni rekord id_user/id_user_sender czyli ID 5 6 | 1 | tresc wiadomosc6 - ostatni rekord id_user/id_user_sender czyli ID 6 potrzebuje tylko unikalnych ID_USER i ID_USER_SENDER Ten post edytował quax 7.05.2013, 13:51:25 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 124 Pomógł: 0 Dołączył: 25.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 2.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Naprawdę pomocne.
![]() takie coś odpada. bo mogę i ja wysłać wiadomość i ktoś do mnie a wcale nie muszę jej odczytać. muszę otrzymać wynik niezależnie od tego czy to ja jestem ID_USER CZY ID_USER_SENDER i dodatkowo musi być to ostatnia wiadomość Ten post edytował quax 7.05.2013, 16:03:29 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 124 Pomógł: 0 Dołączył: 25.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
Szczerze mowiac to Cie nie rozumiem jesli chcesz zobaczyc wiadomosci wyslane i odebrane to dodaj tez id_user_sender do warunku where. Jesli chcesz ostatnią wiadomosc dodaj Limit 1 na sortowanie id wiadomosci.
Ten post edytował lexis72 7.05.2013, 16:07:16 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 2.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Patrząc po twoim doświadczeniu raczej wątpię ze mi pomożesz. Opisze wszystko jeszcze raz.
System wiadomości działa na zasadzie: Wiadomości wątkowych. Wyświetlanie ok. Wysyłanie ok. Wyświetlanie po obu stronach ok. Sprawa się komplikuję jak mam zrobić listę osób z którymi rozmawiałem. Trzeba brać pod uwagę ze ktoś mógłby do mnie napisać, a ja nie odp. Całość ma wyglądać w ten sposób że jeśli pisałem z kimś to ma być nick osoby(w moim przypadku ID użytkownika w tabeli ID_USER_SENDER) i ostatnia wiadomość albo moja albo jego zależy kto napisał ostatni. Cała baza wygląda tak z przykładami: ![]() Dobra dodam i moje zapytanie jak wygląda a pod nim wynik: ![]() nie powinny się duplikować jak w przypadku ID 1 i 2, a 16 i 18 to wiadomości bez odp. Ten post edytował quax 7.05.2013, 17:32:06 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 651 Pomógł: 116 Dołączył: 3.06.2012 Skąd: Lędziny Ostrzeżenie: (0%) ![]() ![]() |
Powinieneś tutaj dodać dodatkową kolumnę, gdzie będziesz numerował ROZMOWY (nie rekordy, a rozmowy). Wtedy przykładowo dla ID 1 i 2 przypisujesz unikalny identyfikator (powiedzmy 443) i w zapytaniu zwyczajnie definiujesz 'GROUP BY `unique_id_pm`. W efekcie powinieneś dostać to czego oczekujesz.
Ten post edytował Michael2318 9.05.2013, 08:15:15 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 22.06.2025 - 02:34 |