ana sayfa > PHP > PHP | Online Ziyaretçi Takibi

PHP | Online Ziyaretçi Takibi

Pazar, 11 Nis 2010

Bu dersimizde Sitelerin vazgeçilmezlerinden olan online kullanıcı ve ziyaretçi bildirimi yapan bir program hazırlayacağız. Dersimizin sonunda kolayca sitenize ekleyebileceğiniz. Bir online kullanıcı ve ziyaretçi takip programı oluşturmuş olacağız. Programa geçmeden önce programı kullanmak isteyecek arkadaşlar için bazı açıklamalarım olacak. Eğer programın online üyeleri de göstermesini istiyorsanız kullanıcılarınız giriş yaptığında rumuzlarını bir session değişkenine atın. Aşağıdaki tabloyu veri tabanınızda oluşturun. Birde unutmadan mysql bağlantı değişkenlerini kendi veri tabanınıza göre değiştirin sonra şikayet etmeyin kod çalışmıyor diye .

Tablo Yapısı:

CREATE TABLE `oturum` (
`id` int(11) unsigned NOT NULL auto_increment,
`ip` varchar(25) NOT NULL default ”,
`isim` varchar(25) default NULL,
`sure` varchar(25) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM;

<?

session_start();

$conn=mysql_connect("host","kullanıcı adı","sifre")  or

die("Veri tabanına bağlanılamadı Hata Kodu: ".mysql_errno($conn));

$db=mysql_select_db("veritabanı");

if(!$db){echo "veritabanı şeçilemiyor";}

$ip = $_SERVER['REMOTE_ADDR']; //ip adresini değişkene alıyoruz

if(session_is_registered("rumuz")){$online_rumuz=$rumuz;}

//kullanıcı kayıtlımı kontrol ediyoruz.

/*Eğer 15 dakikadan fazla kullanıcı aktif değilse

veri tabanından sileceğiz.*/

$zaman=time();

//şimdik zamanın zaman mührünü aldık

$zaman_asimi = $zaman-900;

//zaman aşımını 15 dakika olarak ayarladık size kalmış

mysql_query("DELETE FROM oturum WHERE sure < $zaman_asimi");

/*Sildiğimiz aktif olmayan kullanıcılardan sonra aktif

olan kullanıcıların $zaman aşımı başlangıç sürelerini

şimdiki zamana update edelim ki 15 dakika daha süre verelim.*/

$zaman=time();

$zaman_asimi = $zaman-900;

$update=mysql_query("UPDATE oturum set sure='$zaman' WHERE ip = $ip and sure > $zaman_asimi");

//Simdide sayfamızı yeni açan kullanıcıları kayıt edelim.

$sorgu=mysql_query("select ip from oturum where ip='$ip'");

$kayit=mysql_num_rows($sorgu);

if($kayit==0)

        {

        $zaman=time();

        mysql_query("INSERT into oturum (id,ip,isim,sure) VALUES('','$ip','$online_rumuz','$zaman')");

        }

/*Buraya kadar yapmamız gereken işlemleri yaptık

şimdide online kullanıcı ve ziyaretçi sayımızı gösterenbir

 fonksiyon hazırlayalım.*/

function online()

        {

        $sorgu=mysql_query("SELECT ip from oturum");

        $toplam_online=mysql_num_rows($sorgu);

        $sorgu2=mysql_query("SELECT isim from oturum where isim != ''");

        $online_uye=mysql_num_rows($sorgu2);

        $ziyaretci=$toplam_online-$online_uye;

        if($sorgu){mysql_free_result($sorgu);}

        if($sorgu2){mysql_free_result($sorgu2);}

        mysql_close();

        return "Sitede".$ziyaretci."ziyaretci".$online_uye."üye toplam".$toplam_online."kullanıcı online";

        }

/*Fonksiyonumuz hazır yapmanız gereken bu sayfayı

her sayfanıza include edip echo online(); yazmak. */

?>

Evet arkadaşlar kodumuz hazır umarım faydalı olur. Soru ve yorumlarınızı foruma yazabilirsiniz. Hepinize iyi çalışmalar.

Okan ATABAĞ
Kaynak : TheCoders.Net

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)

coders PHP

  1. Pazar, 11 Nis 2010 zamanında 13:59 | #1

    Bu yazı http://www.thecoders.net sitesinden alınmıştır.Lütfen emeğe saygı duyunuz ve aldığınız kaynağı belirtiniz…

    http://www.thecoders.net/dersmakaleoku-1-82-PHP–Online-Ziyaretci-Takibi.html

  2. Pazar, 11 Nis 2010 zamanında 14:10 | #2


    TheCoders.Net:

    Bu yazı http://www.thecoders.net sitesinden alınmıştır.Lütfen emeğe saygı duyunuz ve aldığınız kaynağı belirtiniz…

    http://www.thecoders.net/dersmakaleoku-1-82-PHP–Online-Ziyaretci-Takibi.html

    Emeğe Saygımız Herzaman vardir. Tskler.

  1. şimdilik geri bağlantı yok
  • RSS
  • Newsletter
  • Twitter
  • Facebook
  • MySpace
  • FriendFeed