Pm Algoritması

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Nvidia
    Nvidia's avatar
    Banlanmış Üye
    Kayıt Tarihi: 13/Nisan/2013
    Erkek

    Hocalar yaptığımbi sisteme  pm  leşme eklemem  gerek. Ama  bi türlü kafamda stabil çalışabilecek bi pm sistemi kuramadım.  İki kullanıcı arasındaki verileri çekmeye kadar tüm detaylarıyla algoritmasını paylaşabilecek olan varmı @holyone paylaşssa süper olur  aslında :D


    Milyarlarca yıl ölüydüm dirildim ve tekrar dirilmemek üzere öleceğim günü bekliyorum!
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    asiminnesli
    asiminnesli's avatar
    Kayıt Tarihi: 19/Mart/2010
    Erkek

    1-2 küçük deneme dışında yapmamistim onlarda da şöyle yaptım PM atılacak kişinin id sine göre mesajın içeriğini kaydediyorum okundu/görüldü=0 sonra bir kişi giriş yaptığında alıcı olarak kendi odası varsa ve okundu 0 ise ye i PM in var diyorum tıklayınca PM e okundu yü 1 yapiyordum ama 5-10 kullanıcıda sıkıntı yok ama yüksek sayılarda sıkıntı olabilir belki


    I am Jack's inflamed sense of rejection
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Nvidia
    Nvidia's avatar
    Banlanmış Üye
    Kayıt Tarihi: 13/Nisan/2013
    Erkek
    asiminnesli bunu yazdı

    1-2 küçük deneme dışında yapmamistim onlarda da şöyle yaptım PM atılacak kişinin id sine göre mesajın içeriğini kaydediyorum okundu/görüldü=0 sonra bir kişi giriş yaptığında alıcı olarak kendi odası varsa ve okundu 0 ise ye i PM in var diyorum tıklayınca PM e okundu yü 1 yapiyordum ama 5-10 kullanıcıda sıkıntı yok ama yüksek sayılarda sıkıntı olabilir belki

    bu kızmı bende yaptım hocam mesele şuki  mesela tahribatta eski gönderdiğin mesajlarda duruyor.  Bu ksım kafamı çok karıştırdı.


    Milyarlarca yıl ölüydüm dirildim ve tekrar dirilmemek üzere öleceğim günü bekliyorum!
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    override
    override's avatar
    Kayıt Tarihi: 15/Aralık/2009
    Erkek

    [Message]
     Id
     ParentId (NULL)
     ReiceverUserId
     SenderUserId
     Content
     CreateDate
     IsRead
     


    g͇̫͛͆̾ͫ̑͆l͖͉̗̩̳̟̍ͫͥͨ
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    YeniHarman
    YeniHarman's avatar
    Kayıt Tarihi: 17/Haziran/2012
    Erkek

    Tablo:

    id (int, unique) - from_id (int) - to_id (int) - is_read (boolean, [0,1]) - message (nvarchar(1000))

    Tablomuz yukarıdaki gibi olabilir. 

    id zaten unique, yapacak bir şey yok.

    from_id, gönderenin id'si (kullanıcı tablosunda vardır ya da olmalı).

    to_id, alıcının id'si (yine kullanıcı tablosundan).

    is_read, alıcı okudu mu? Henüz okumadıysa 0, okuduğunda 1. Bu güncellemeyi id'ye sahip link alıcı tarafından tıklandığında yapabilirsin.

    message, mesaj içeriği. Kullanıcıya gösterirken html taglarını silmen ya da dönüştürmen (<'yi &lt gibi entitylere dönüştürmen ve utf8'in görülmeyen karakterlerini filtrelemeni tavsiye ederim).


    Olaylara karışmayın!
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    buzukatak
    buzukatak's avatar
    Kayıt Tarihi: 27/Haziran/2010
    Erkek

    mesajID(int), konu(text), mesaj(text), tarih(datetime), gonderenId(int), gonderenSildi(bool), aliciId(int), aliciOkudu(bool), aliciSildi(bool)

    Bu işin tek tablolu çözümü budur. Hem gonderen hem alıcı sildiğinde mesaj fiziki olarak silinebilir.


    anlıyorum.
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    trooper
    trooper's avatar
    Kayıt Tarihi: 11/Kasım/2007
    Erkek
    Nvidia bunu yazdı
    asiminnesli bunu yazdı

    1-2 küçük deneme dışında yapmamistim onlarda da şöyle yaptım PM atılacak kişinin id sine göre mesajın içeriğini kaydediyorum okundu/görüldü=0 sonra bir kişi giriş yaptığında alıcı olarak kendi odası varsa ve okundu 0 ise ye i PM in var diyorum tıklayınca PM e okundu yü 1 yapiyordum ama 5-10 kullanıcıda sıkıntı yok ama yüksek sayılarda sıkıntı olabilir belki

    bu kızmı bende yaptım hocam mesele şuki  mesela tahribatta eski gönderdiğin mesajlarda duruyor.  Bu ksım kafamı çok karıştırdı.

    sql sorgusunu alici id ye göre yaparsan gelen mesajlarını görürsün gonderenid için çalıştırıp tarihe göre order by çekersen gönderdiğin pm leri görürsün.

    id,gonderen,alici,okuma,yanit_id,mesaj,tarih .... gibi bi tablo oluşturup oturum kontrolü yaparak oturum açan kullanıcının id alırsın göndereceği kişinin idsine kayıt girdir. cevap verecek şekilde yapmak istediğin zaman da yanit_id kısmına o mesajın id bastır bu kadar.Burda kilit nokta sql inj için filtrele tüm mesajları ve yetkisiz mesaj okuma için kullanıcı id kontrolü yap

    sorguyu 

    where alici=oturumu kontrol ettiğin kullanıcı id order by tarih burdan gelen mesajları görürsün

    where gonderen=oturumu kontrol ettiğin kullanıcı id order by tarih burdan giden mesajları görürsün

    gelende mesajı yazdırdıktan sonra mesajın id si yanit_id içersinde varsa altına da yanıt olarak onu bastır geç


    ZzZzZzZ...!
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    asiminnesli
    asiminnesli's avatar
    Kayıt Tarihi: 19/Mart/2010
    Erkek
    Nvidia bunu yazdı
    asiminnesli bunu yazdı

    1-2 küçük deneme dışında yapmamistim onlarda da şöyle yaptım PM atılacak kişinin id sine göre mesajın içeriğini kaydediyorum okundu/görüldü=0 sonra bir kişi giriş yaptığında alıcı olarak kendi odası varsa ve okundu 0 ise ye i PM in var diyorum tıklayınca PM e okundu yü 1 yapiyordum ama 5-10 kullanıcıda sıkıntı yok ama yüksek sayılarda sıkıntı olabilir belki

    bu kızmı bende yaptım hocam mesele şuki  mesela tahribatta eski gönderdiğin mesajlarda duruyor.  Bu ksım kafamı çok karıştırdı.

    Zaten mesajları sildirmiyoruz ki eski mesajlar duracak gönderen ID ye göre ve tarihe Göre siraliyacaksin


    I am Jack's inflamed sense of rejection
Toplam Hit: 1128 Toplam Mesaj: 8
algoritma pm pm pm algotitma