-
Üyelik
12.03.2013
-
Yaş/Cinsiyet
32 / E
-
Meslek
...
-
Konum
Adana
-
Ad Soyad
M** Ç**
-
Mesajlar
665
-
Beğeniler
329 / 328
-
Ticaret
1, (%100)
Merhaba arkadaşlar,
Elimdeki bir siteyi güzelhosting'e taşıdım. Fakat taşıdıktan sonra mesajlarla ilgili bir sorgu istediğim gibi çalışmaz oldu. Önceki hosting'imin süresi daha dolmadı, orada denediğimde çalışıyor ama yeni hostingde çalışmıyor.
Bu yüzden sorunun yeni hosting tarafında olduğu kesin.
(Not: firmanın suçu değil tabi, yeni hosting derken benim taşımamdan kaynaklı olduğunu kast ediyorum tabi. Ya da sistem ayarının farklı olmasından)
Sorgu bu:
$uye_id = $_SESSION["uye_id"];
SELECT * FROM sohbet, (SELECT * FROM mesaj as m1 ORDER BY m1.msj_id DESC) AS m2
WHERE m2.msj_sohbet_id = sohbet.sohbet_id
AND (sohbet.uye1 = '$uye_id' or sohbet.uye2 = '$uye_id')
GROUP BY sohbet.sohbet_id ORDER BY m2.msj_id DESC
Kısaca yapmak istediğim şey şu;
Whatsapp veya facebookta olduğu gibi sohbet edilen kişilerin listesi var (sohbetler sayfası) ve bu sayfada her sohbete ait "son mesajı" gösteriyorum. Sohbete tıklayınca o sohbetle ilgili mesajlar listeleniyor detay sayfasında.
Ama gel gör ki sohbetlerde son mesajı gösteremiyorum. Ya ilk mesaj çıkıyor ya da ortalardan bir mesaj. Mesajları çekerken sorgu içinde sorgu yaparak msj_id numarasına göre DESC yaparak çekiyorum ama yine de olmuyor.
Sohbet tablosu;
sohbet_id, uye1, uye2
Mesaj tablosu;
msj_id, msj_gonderen, msj_alan, mesaj_detay, msj_sohbet_id, msj_tarih
-
Üyelik
01.03.2015
-
Yaş/Cinsiyet
27 / E
-
Meslek
Freelance Web Developer
-
Konum
Yalova
-
Ad Soyad
A** A**
-
Mesajlar
59
-
Beğeniler
9 / 13
-
Ticaret
1, (%100)
SELECT * FROM sohbet INNER JOIN mesaj ON sohbet.sohbet_id = mesaj.msj_sohbet_id WHERE (sohbet.uye1 = '$uye_id' AND mesaj.msj_gonderen = '$uye_id') OR (sohbet.uye2 = '$uye_id' AND mesaj.msj_alan = '$uye_id') ORDER BY mesaj.msj_id DESC LIMIT 1
olarak deneyebilirsiniz.
1 kişi bu mesajı beğendi.
-
Üyelik
12.03.2013
-
Yaş/Cinsiyet
32 / E
-
Meslek
...
-
Konum
Adana
-
Ad Soyad
M** Ç**
-
Mesajlar
665
-
Beğeniler
329 / 328
-
Ticaret
1, (%100)
Yalnız bu şekilde 1 tane sohbet listeler. Ben üye kaç kisiyle sohbet ettiyse hepsi listelensin ama her bir sohbetin en son mesajı görünsün istiyorum. Whatsapp sohbeti ele alalım. Sohbet kısmına girince Ahmet, Ali, Veli diye 3 kişiyle konuşmuşum, üçü alt alta listeleniyor ve her birinde en son hangi mesaj yazılmışsa o görünüyor. Bu sizin verdiğiniz kodda sadece en son sohbet ettiğim kişi görünür yani Ahmet. Ali ve Veli'nin mesajlarını göremem.
-
Üyelik
28.11.2013
-
Yaş/Cinsiyet
30 / E
-
Meslek
Ameliyathane Hemşiresi
-
Konum
Afyon
-
Ad Soyad
I** Ç**
-
Mesajlar
2633
-
Beğeniler
344 / 487
-
Ticaret
12, (%100)
Sorguyu phpmyadminde girdiğinizde ne hata aldınız