Bugün bir arkadaşımın patronuyla iddialaşması üzerine beni de gaza getirmesi sebebiyle online ziyaretci sayısını bildiren bir betik yazmamı istedi. Bunu SESSION ile yapmamı istedi ama bu sessionla olacak bir iş değildi. Patronu da MySQL kullanımına izin vermeyince farklı bir veritabanı kullandık. Bu veritabanı SQLite idi. Kendisi php 5 ile gelen içerisine sql veritabanı motoru enjekte edilmiş c kütüphanesi olarak bilinir.
Madem ki mysql istemiyordu bende sqlite ile yapayım dedim ve başladım ufak bir betik yazmaya ve ortaya güzel bir nesne çıktı. SQLite hız vs açısından pek bişey diyemeceğim lakin fazlasıyla tatmin edeceğinden eminim. Ayrıca normal veritabanı olarakda kullanabilirsiniz uygulamalarınıza dahil edebilir yönetebilirsiniz. Gerçi biraz normal sql den farklı ama onu da sitesinden döküman okuyarak çözebilirsiniz.
Lafı fazla uzatmadan örneğimize geçelim ve bir hatırlatma ile devam edelim sqlite bir dosya oluşturur bu nedenle oluşacak dosyanın bulduğu dizinin yazma hakları verilmiş olmalıdır.
Online Ziyaretçi betiğimiz:
|
|
Online Ziyaretçi Sınıfımıza Göz Atalım:
Sınıfımızı nasıl kullanacağız bir örnek ile hemen açıklayalım. Öncelikle yapmamız gereken şey betiğimizi açıp
const database = ‘onlineziyaretci’; ve const table = ‘ziyaretciler’;satırlarını kendimize göre değiştiriyoruz. Ardından ise $timeoutdeğerini belirtiyoruz. Standart timeout değer 1 dakikadir Bunlarıyaptıktan sonra aşağıdaki örnekdeki gibi kullanabiliriz.
|
|
Evet bir online ziyaretçi betiğinin anatomisi bu kadar betiği buradan indirebilirsiniz.
önceki yazı Resimlerde Güvenlik |
sonraki yazı Matlab Grafik Arayüz oluşturma |
yazı güzel bir sistemi asp.net ' de yazmıştım isteyen olursa paylaşabilirim.
ama hile yapmışsın abi :) sayılmaz bu veri tabanı veri tabanıdır :)
sqllite de iyimiş bu arada. keşke uygulama bazlı kısa süreli de olsa değişkenlerimiz olsa.chace gibi işlerde session gibi kullanabilsek. güzel olurdu.
asp de bunu application ile yapmışlar tabi application nedir ne değildir bilemiyorum ama session ile olcak bişey değil sonuçta session her bilgisayar için özel olarak açılır... Ben burda bir txt vs yerine sqlite kullandım yapcak bişey yok :)
Güzel yazı olmuş teşekkür ederim
selamlar.. güzel bir yazı olmuş..
yanlış anlamayın ama kişisel görüşüme göre online ziyaretçi gibi basit bir sistemde class kullanımına gerek yok .. sakın yanlış anlamayın.. bu benim düşüncem :)
@Serhat7
fonksiyon yapıp kullanabilirsiniz veya inline kodda yazabilirsiniz. burda yazıklarımız örneklerden ibaret...
klasik asp'de application server bazında değişken oluşturmamızı sağlıyor ve tıpkı session gibi değişkenlerin bir ölüm süresi oluyor.
Sitedeki online ziyaretçi sayısı için global.asa dosyası kullanılır. IIS kendine bir istek geldiğinde ilk olarak bu özel dosyayı arar. Bulursa önce onu işletir. Zaten tüm özelliği de budur. Bu dosya içerisine application nesnesi uygun şekilde programlandığı takdirde online kişi sayısını elde edebiliyoruz. Tabii bu anlatılanlar sadece klasik asp içindir Asp.net ile ilgisi yoktur.
Ayrıca anlattığım yöntemde yapılacak kodlama max. 5-10 satır sürer. Online kişi sayısı lazım oldukça <%=application("online")%> şeklinde yazdırabiliyoruz.
Yusuf güzel olmuş, sqlite yönünde
teşekkürler
Güzel yazı olmuş Yusuf hocam teşekkürler. Ayrıca zekice davranmışsınız mysql olmazsa başkası olur :) patron hiçbir veritabanı kullanılmayacak dese neysede.
pillinetwork sitelerine yorum ekleyebilmek ve daha fazlası için, üye olun ya da giriş yapın.
Nokta ve pilli ortak yapımı olan kodaman.org hep birlikte içerik üretip gelirini yazarları ile paylaştığımız kolektif bir kod yazarları blogudur. Siz de katılabilirsiniz.