Php ile Online sayacı yapalim - PHP Webmaster bilgi bankası, knowledge base Webmaster Araçları

AnaSayfa > PHP > Php ile Online sayacı yapalim
Kategori: PHP
Gönderen: Admin
Tarih: 2008-11-07
Puan: 0   Puan:0 | Katılımcı:0 | Katılımcı : 0
Okunma: 3846
  
 
1 puan 2 puan 3 puan 4 puan 5 puan 6 puan 7 puan 8 puan 9 puan 10 puan

öncelikle bi veritabanı lazım bize.. dolayısıyla phpmyadmin mysql yada benzeri terimleri bilmeyenler boşa okumasın.

tablo adımız:
online

tablodaki alanlar:
id (int) auto_increment verin.
ip (varchar) 40 verin. (hostnamelerede hazırlıklı olalım..)
sure (varchar) 20 verin gitsin..

ONLINE
-------------



Kod Çizelgesi Kod Dili: html
id | ip | sure


tablomuz bu..

şimdi başlayalım kodlamaya...
online.php dosyası...

PHP Kodu:


<?

// Gelen ip adresinin kaydı varsa güncelleyelim.. yoksa yeni giriş yapalım..
$gelenip = $_SERVER['REMOTE_ADDR'];
$sure = time();
$kontrol = mysql_query("select * from online where ip='$gelenip'");
if(mysql_num_rows($kontrol)>0) {
mysql_query("update online set sure='$sure'"); } else {
mysql_query("insert into online (id,ip,sure) values ('','$gelenip','$sure')");
}
// Veritabanımızı çok fazla doldurmamak için eskileri silelim..
// burda ben 100 saniye hareketsiz kalanları siliyorum kendinize göre değiştirin.
$silinen = 100;
// süreleri bi listeleyelim...
$sorgula = mysql_query("select sure from online");
while($row=mysql_fetch_array($sorgula)) {
$bak = $sure-$row['sure'];
if($bak>$silinen) {
mysql_query("delete from online where id='$row[id]'");
}
}
// Aşağıdaki fonksiyon o anda online kaç kişi olduğunu gösterecek bize..
function online_ver() {
$sorgu = mysql_query("select count(*) as toplam from online");
$bilgi =mysql_fetch_array($sorgu);
return $bilgi['toplam'];
}
?>


bu online.php dosyamızı tüm sayfalarımıza include ediyoruz..
eğer session ile çalışıyorsak,
session_start(); dan hemen sonra
include 'online.php';
diyoruz... sitedeki tüm sayfalarda olması şart..

kodlarımızı tamamladık.. tüm sayfalarımıza yerleştirdik...
sayfamızın istediğimiz bir bölgesine;


PHP Kodu:


<? echo online_ver(); ?>


yaptığımızda.. görüyoruzki sitemizde 100 saniye içerisinde hareket halinde olan kullanıcılar kaç taneymiş...
Kolay Gelsin
Makale Sahibi : ERYILMAZ



Yorumlar
Henüz Kimse Yorum Yapmamış, ilk yorumu siz ekleyin!
Yorum Ekleme Aparatı
Yorum Eklemek için lütfen sol menuden giris yapınız..
Toplam 0 yorum listelendi.