Cześć
Mamy ID usera z sesji czyli nasze, nazwijmy je $session_id
.
Mamy ID usera, z którym czatowaliśmy. Nazwijmy go $user_id
.
Mamy tabelę MySQL o następującej strukturze ( nieistotne kolumny pominąłem ).
message_id INT
sender_id INT
receider_id INT
message_content TEXT
message_date DATETIME
Przykładowe dane są następujące.
1,6,4,asdasdasd,data
1,4,6,assad65sad,data
Problem jest następujący.
Jak przy pomocy jednego zapytania pobrać wiadomości, które otrzymaliśmy i które wysłaliśmy aby uzyskać następnie tablicę wiadomości w formie czatu, tak jak na fb.
Nie problemem jest to rozwalić na dwa zapytania typu:
SELECT * FROM messages WHERE sender_id = '".$session_id."' AND receiver_id = '".$user_id."'
SELECT * FROM messages WHERE sender_id = '".$user_id."' AND receiver_id = '".$session_id."'.
Jak to zrobić jednym zapytaniem ? Jeśli się nie da to jak to wszystko skleić w tablicę asocjacyjną aby wpisy w niej były posegregowane według daty wysłania? Bo również nie jest problemem z 1 zapytania i z 2 zapytania wygenerować tablicę i wykonać array_merge(), tylko że najpierw wpuści wszystkie wpisy zapytania 1 a potem zapytania 2 :(
Ten problem mnie niestety przerasta.
dodanie znaczników <code> i <code class="mysql">
- @furious programming