• 20-05-2015, 19:07:51
    #1
    Merhaba arkadaşlar. Sitemde o an kaç kişi online öğrenmek istiyorum. Hatta kimler hangi sayfada öğrenmek istiyorum ve bu verileri kullanmak istiyorum. Analyticsten açıp bakabiliyorum ancak o verileri kullanıcılara gösteremiyorum o yüzden işime yaramıyor. Whos gibi hazır siteler de kullanmak istiyorum. Php ile bunu kendim nasıl yapabilirim?
  • 20-05-2015, 19:09:34
    #2
    http://whos.amung.us/ işine yarar.
  • 20-05-2015, 19:30:08
    #3
    Üyeliği durduruldu
    Arşivimde sürekli bulundurduğum işime yarayan güzel bir kod buyur;

    İlk olarak sql içe aktar

    CREATE TABLE `online` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
      `timestamp` int(15) NOT NULL DEFAULT '0',
      `ip` varchar(40) COLLATE latin1_general_ci NOT NULL DEFAULT '',
      `file` varchar(100) COLLATE latin1_general_ci NOT NULL DEFAULT '',
      PRIMARY KEY (`id`),
      KEY `ip` (`ip`),
      KEY `file` (`file`),
      KEY `timestamp` (`timestamp`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=3 ;
    Ardından baglanti.php adında bir config dosyası oluştur içerisine MySQL bilgilerini yaz kaydet.

    <?
    $db_host = "localhost";
    $db_user = "";
    $db_pass = "";
    $db_name = "";

    $connect = @mysql_connect($db_host,$db_user,$db_pass);

    $db = mysql_select_db($db_name,$connect);
    if (!$connect) {
    echo ("noconnection");
    exit();
    }
    ?>

    online.php adında bir php dosyası oluştur ve içerisine şunları yaz

    <?php
    include('baglanti.php');

    //Fetch Time
    $timestamp = time();
    $timeout = $timestamp - 180;

    //Insert User
    $insert = mysql_query("INSERT INTO online (timestamp, ip, file) VALUES('$timestamp','".$_SERVER['REMOTE_ADDR']."','".$_SERVER[PHP_SELF].'?'.$_SERVER[QUERY_STRING]."')") or die("Error in who's online insert query!");
    //Delete Users
    $delete = mysql_query("DELETE FROM online WHERE timestamp<$timeout") or die("Error in who's online delete query!");
    //Fetch Users Online
    $result = mysql_query("SELECT DISTINCT ip FROM online") or die("Error in who's online result query!");
    $users = mysql_num_rows($result);

    //Show Who's Online
    if($users == 1) {
    print("Online $users\n");
    } else {
    print("Online $users\n");
    }
    ?>

    Son olarak hepsini ftp ana dizine at ve bu kodu online userlerin gösterileceği yere yaz (Genel olarak sitenin Footer bölümüne yazılır.)

    <span>Online Uye Sayimiz: <b><?php include('online.php');?></b></span>
  • 08-06-2021, 12:49:35
    #4
    Serverida adlı üyeden alıntı: mesajı görüntüle
    Arşivimde sürekli bulundurduğum işime yarayan güzel bir kod buyur;

    İlk olarak sql içe aktar

    CREATE TABLE `online` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
      `timestamp` int(15) NOT NULL DEFAULT '0',
      `ip` varchar(40) COLLATE latin1_general_ci NOT NULL DEFAULT '',
      `file` varchar(100) COLLATE latin1_general_ci NOT NULL DEFAULT '',
      PRIMARY KEY (`id`),
      KEY `ip` (`ip`),
      KEY `file` (`file`),
      KEY `timestamp` (`timestamp`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=3 ;
    Ardından baglanti.php adında bir config dosyası oluştur içerisine MySQL bilgilerini yaz kaydet.

    <?
    $db_host = "localhost";
    $db_user = "";
    $db_pass = "";
    $db_name = "";

    $connect = @mysql_connect($db_host,$db_user,$db_pass);

    $db = mysql_select_db($db_name,$connect);
    if (!$connect) {
    echo ("noconnection");
    exit();
    }
    ?>

    online.php adında bir php dosyası oluştur ve içerisine şunları yaz

    <?php
    include('baglanti.php');

    //Fetch Time
    $timestamp = time();
    $timeout = $timestamp - 180;

    //Insert User
    $insert = mysql_query("INSERT INTO online (timestamp, ip, file) VALUES('$timestamp','".$_SERVER['REMOTE_ADDR']."','".$_SERVER[PHP_SELF].'?'.$_SERVER[QUERY_STRING]."')") or die("Error in who's online insert query!");
    //Delete Users
    $delete = mysql_query("DELETE FROM online WHERE timestamp<$timeout") or die("Error in who's online delete query!");
    //Fetch Users Online
    $result = mysql_query("SELECT DISTINCT ip FROM online") or die("Error in who's online result query!");
    $users = mysql_num_rows($result);

    //Show Who's Online
    if($users == 1) {
    print("Online $usersn");
    } else {
    print("Online $usersn");
    }
    ?>

    Son olarak hepsini ftp ana dizine at ve bu kodu online userlerin gösterileceği yere yaz (Genel olarak sitenin Footer bölümüne yazılır.)

    <span>Online Uye Sayimiz: <b><?php include('online.php');?></b></span>
    deneyen var mı
  • 08-06-2021, 13:53:57
    #5
    analytcsin apileri mevcut sitenize çekebilirsiniz oradan verileri