Php ile online offline kontrolü nasıl yapılır?
Php'de online offline kontrolü nasıl yapılır?
çoğu yazıda okuduğum (saçma bence) üye giriş yaparsa online = 1 yap çıkış yaparsa online = 0 yap.
Bu yöntemle olmaz, malum ki kimse kendi bilgisyarında çıkış yapmakla uğraşmaz, direk browserı kapatır. Bu durumda da jquery kullanarak bunu yapabileceğimi okudum ama nasıl yapıldığını anlatmamış. Sizce bunun yöntemi böyle mi olur yoksa unixtime kullanarak mı? Eğer unixtime ise mantığı nedir?
ajax falan dinleme çünkü gereksiz.
2 yöntem söylüyorum sana uygun olanı kullan.
- bir middleware oluşturursun kullanıcı haraket ettiğinde cache oluşturursun 5 dakikalık. her harekette o cache 5 dakika güncellersin. 5 dakika bittiğinde kullanıcı hareket etmezse sitede zaten offline olmuştur demektir ki o zamanda cache silinecektir.
socket.io kullanabilirsin.
kullanıcı giriş yaptığında socket.id alır backend'e gönderirsin. tablo yapısı işe şöyle;- id (primaryKey)
- socketID (varchar)
- accountID (int)
kullanıcı giriş yaptığında socket id alır sessiondan'da kullanıcı id'yi alır kaydedersin
kullanıcı çıkış yaptığında socket.io tarafında backend'e socket.id gönderirsin
backend tarafında socket.id alır veritabanında sorgularsın
accountID çeker kullanıcının tabloda ki statusu offline olarak güncellersin :) veee bitti. tam dinamik online offline sistemi.