Jump to content

IP İle Günlük, Toplam Sayaç ve Anlık Çevrimiçi Ziyaretçi Sayısı


Recommended Posts

Ekleyen : s_arslan


<?php
//Bu Sayaç İçin Kullanılan ayar.php, baglan.php ve sayaç tabloları(ip_sayac_3.sql) dosyalarını ek_dosyalar.zip Klasöründe Bulabilirsiniz (http://www.pehepe.org/INDIR/ek_dosyalar.zip)

//Oturumu Başlatıyoruz
session_start();

//Veritabanı Bağlantısı
require_once("ayar.php");
require_once("baglan.php");


//----------------------------------------------------------//
// SAYAÇ BAŞLANGICI
//----------------------------------------------------------//

//ZİYARETÇİ IP ADRESİNİ ALIYORUZ
define("UYE_IP", getenv("REMOTE_ADDR"));

$sayac_artirildi = false;
@ $sayac_artirildi = $_SESSION['sayac_artirildi'];
//Eğer Sayaç 1 Kez Artırıldıysa Tekrar Tekrar Sorgulamayı Engelliyoruz
if ($sayac_artirildi < date('Y-m-d'))
{
//Yeni Günde Bugün Tekil Sıfırlanıyor
mysql_query("UPDATE sayac SET buguntekil=0,tarih=CURRENT_DATE() WHERE tarih<CURRENT_DATE() LIMIT 1") or die ("Sayac Hatası -1-");

//Gelen Kişinin IP Adresi Kayıtlı mı Değil mi Kontrol Ediliyor...
$sayac_kayitsorgu = mysql_query("SELECT DATE_FORMAT(tarih,'%Y-%m-%d') AS iptarihi FROM ipkontrol WHERE ip='".UYE_IP."'") or die ("Sayaç Hatası -2-");
if (mysql_num_rows($sayac_kayitsorgu) > 0)
{
//IP Kayıtlı İse Tarihin Bugün Olup Olmadığına Bakılıyor
$ip_tarihi = mysql_fetch_object($sayac_kayitsorgu);
$iptarihi = $ip_tarihi->iptarihi;
if ($iptarihi < date('Y-m-d'))
{
mysql_query("UPDATE sayac SET buguntekil=buguntekil+1,toplamtekil=toplamtekil+1 LIMIT 1") or die ("Sayaç Hatası -3-");
}
mysql_query("UPDATE ipkontrol SET tarih=NOW() WHERE ip='".UYE_IP."'") or die ("Sayaç Hatası -4-");
unset($ip_tarihi,$iptarihi);
} else {
//IP Kayıtlı Değilse Kaydediliyor
mysql_query("INSERT INTO ipkontrol (tarih,ip) VALUES (NOW(),'".UYE_IP."')") or die ("Sayaç Hatası -5-");
//Tekil ve Çoğul Sayaç 1 Artılıyor
mysql_query("UPDATE sayac SET buguntekil=buguntekil+1,toplamtekil=toplamtekil+1 LIMIT 1") or die ("Sayaç Hatası -6-");
}
mysql_free_result($sayac_kayitsorgu);

//Bu Güne Ait Kayıt Yoksa Siliniyor
mysql_query("DELETE FROM ipkontrol WHERE DATE_FORMAT(tarih,'%Y-%m-%d')<CURRENT_DATE()") or die ("Sayaç Hatası -7-");

unset($_SESSION['sayac_artirildi']);
$_SESSION['sayac_artirildi'] = date('Y-m-d');
}

//IP GİRİŞ TARİHLERİ GÜNCELLENİYOR
mysql_query("UPDATE ipkontrol SET tarih=NOW() WHERE ip='".UYE_IP."'") or die ("Sayaç Hatası -8-");

//SAYAÇ VERİLERİ ALINIYOR
//Tekil ve Toplam Ziyaretçi
$sayac_toplam = mysql_query("SELECT buguntekil,toplamtekil FROM sayac WHERE 1") or die ("Sayaç Hatası -9-");
$toplamgelen = mysql_fetch_object($sayac_toplam);
define("TOPLAM_GELEN", $toplamgelen->toplamtekil);
define("BUGUN_GELEN", $toplamgelen->buguntekil);
mysql_free_result($sayac_toplam);
unset($toplamgelen);


//ÇEVRİM İÇİ ZİYARETÇİ SAYISI
define("CEVRIMICI_SURE", 15); //Online Kişileri Gösterme Süresi
$cevrimici_toplam = mysql_query("SELECT COUNT(ip) FROM ipkontrol WHERE tarih>=DATE_SUB(NOW(), INTERVAL ".CEVRIMICI_SURE." MINUTE)") or die ("Sayaç Hatası -10-");
list($toplam_cevrimici) = mysql_fetch_row($cevrimici_toplam);
define("TOPLAM_CEVRIMICI", $toplam_cevrimici);
mysql_free_result($cevrimici_toplam);
unset($toplam_cevrimici,$cevrimici_toplam);


//--------------------------------------------//
// SAYAÇ SONU
//--------------------------------------------//


//Verileri Yazdırıyoruz
echo 'Bugün Tekil : '.BUGUN_GELEN.'<br>';
echo 'Toplam Tekil : '.TOPLAM_GELEN.'<br>';
echo 'Şu An Bağlı : '.TOPLAM_CEVRIMICI;
?> [/CODE]

Link to comment
Share on other sites

"Bu Sayaç İçin Kullanılan ayar.php, baglan.php ve sayaç tabloları(ip_sayac_3.sql) dosyalarını ek_dosyalar.zip Klasöründe Bulabilirsiniz"

yazmışsınız.

bu dosyaları göremedim :D

Link to comment
Share on other sites

  • 1 yıl yıl...

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...