İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Kullanıcıların Hangileri online

  • Konbuyu başlatan Anonymous
  • Başlangıç tarihi
A

Anonymous

Misafir
Bir kullanicili sistem dusunun ve sitede online olanlarin nickname lerini
listeletmek istiyorum
bunu nasil yapabilirim
 
A

Anonymous

Misafir
Merhaba,

Boyle birseyi benim kendi sistemlerim uzerinde uyguladigim bir yontemle yapabilirsiniz. Yapi soyle,
oncelikle o anda sistem uzerinde (site) bulunan kullanicilari aktif kullanicilar (active_user) olarak tanimlayalim. Simdi bu kullanicilarin sadece user_id lerinin tutulacagi bir tablo tanimlariz. Tablo bilgileri soyle olsun;

id int not lisanssız unsigned auto_increment
user_id int unsigned not lisanssız
session char(32)
session_end int unsigned

Simdi, anlasildigi uzere id degiskeni tablonun unique (tek, tekrarsiz) uyesi. user_id ise bizim uyemizin sistem uzerindeki numarasi. session degiskeninde kullanici icin uretilmis gecici oturum string 'i. session_end ise bir kullanicinin zombie olarak sistem uzerinde ne zaman kadar barinabilecegine karar veriyor.

Ben bu sistemi kurarak oncelikle hem kendi session yapimi kurmus oluyorum hem de sistem uzerindeki aktif kullanicilardan haberim olmus oluyor. Kullanici site uzerinde herhangi bir hareket yaptiginda (ornegin bir linke tiklamak) session_end degiskenini guncelliyoruz. Boylece durup dururken kullanici sistemden atilmiyor. Ama lokal saat session_end zamanina erismisse ve kullanicida herhangi bir hareket yok ise o kullaniciya ait kaydi bu tablodan (active_user) siliyoruz. Boylece herhangi bir anda sistem uzerinde kac kullanicinin aktif oldugu anlasilmis oluyor. Hatta is daha ileri goturulerek, kullanicinin sistem uzerinde su anda nerde oldugunu bile gorebilirsiniz bu yontem ile.

Kaan ERDEMIR
ITU Math. Engineering Dept.
Ericsson Crea-World Projects
maviofis.com
 
B

Brandon

Misafir
Merhaba,

Bu konuda benim de bir kaç sorum olacak, arkadaşın yapmak istediği şeyi daha önce ben de planlıyordum ancak öncelikli projelerim yüzünden ertelemek zorunda kalıyordum. Sorunu ve cevabı okudum ancak anlamadığım bir nokta var:

- Session End variable'ımız, hangi formatta olmalı, yani session_end değerini yaratırken yüksek ihtimalle php nin date() ve/veya time() fonksiyonlarından yararlanacağız, bunun formatı nasıl olacak onu merak ediyorum bu fonksiyonları hangi formatta kullanıp bir değer yaratacağımızı biri açıklarsa sevinirim. (yani date(Y,M,d) şeklinde felan değildir heralde? saniye ve dakika cinsiden değerler de gerekiyor???)

İyi çalışmalar.
 
P

Php.Dosyasi.com

Misafir
Merhaba
www.phpdosyasi.com sitesinde User Online Scripti yazma ile ilgli olarak bir makale yazdım. Senin istediğin özellikleri içerisinde barıdırılıyor.
Dilersen siteye girip bu makaleyi okuyabilirsin sana yardımı olacağını düşünüyorum.

Çalışmalarında başarılar.
 
E

Ergin2

Misafir
Merhaba,
Ben online kullanıcıların listelenmesi konusunu aslında gereksiz gördüğümü belirtmek istiyorum.

Üye sayınız arttıkça online kullanıcıları listeleme işlemi sitenizin hızını düşürecektir. Kullanıcının logout tuşuna basmadan sistemden çıkması (sayfayı kapatması gibi) online olmadığının anlaşılması ve tekrar MySql'e update işini diğer online kullanıcıların üzerine yıkmakla olur. Ziyaretçi sayınız az ise ve online süresini kısa tutmuşsanız (60 sn) ve geceyarısından sonra az olan ziyaretçileriniz uyumuşsa, soz ziyaretçinizde artık uykusu gelmiş ve bağlantısını kesip gitmişse sabaha kadar online gözükecektir. Taaki üyelerinizden birisi login oluncaya kadar..

Üyeler ile değilde sayfayı her ziyaret eden kişi ile yaparsanız bu hızı iyice düşürür ve MySql'e bağlantı sayısını arttırır..

Bunun yerine üyelerinizin Bookmark'larına ekliycekleri arkadaşlarının seçili olnalarının veya tümünün online sorhgusunun yapılması daha akla yatkın gibi geliyor. Böylece bekleyen taraf sorguyu yapan kişi olucaktır ve sistemdeki üyelerin tümünü değilde sadece arkadaşlarının sorgusunu yapması hız için oldukça iyidir.

Üyelerin her işlemlerinde localtime'ın kendi hesaplarında update edilmesi ve belirlencek bir online süre zaman aralığı ile online olup olmadığının sorgusu yapılabilir.

Herkesin birbirinin online sorgusunu yapması yerine, isteyenin istediklerini sorgulaması daha mantıklı gibi geliyor..
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst