• 04-02-2009, 18:41:19
    #1
    Merhaba arkadaslar
    LaGuLas şiir scriptinde online.php isminde bir dosya buldum
    içerigi şöyleydi..
    <?
    $timeoutseconds     = "300";              // How long it it boefore the user is no longer online
    $timestamp=time();
    $timeout=$timestamp-$timeoutseconds;
    $REMOTE_ADDR=$_SERVER['REMOTE_ADDR'];
    mysql_query("INSERT INTO online VALUES ('$timestamp', '$REMOTE_ADDR', '$PHP_SELF')");
    mysql_query("DELETE FROM online WHERE timestamp<$timeout");
    $result=mysql_query("SELECT DISTINCT ip FROM online WHERE file='$PHP_SELF'");
    $user  =mysql_num_rows($result);
    echo $user
    
    ?>
    Ben bu kodların başına
    <?include("dbs.php");?>
    bunu ekledim
    ve sonunada aşagdakini ekledim
    <?@mysql_close();?>
    ve bu sayfayı çalıştırdıgımda
    o sayfada kaç kişi var sayı olark gösteriyor
    ben istiyorumki kayıtlı uyelerden kim varsa isminide yazsın

    örnegin:
    Online üyeler: ahmet,mehmet,zeynep

    Yardımlarınızı bekliyorum
  • 04-02-2009, 18:47:31
    #2
    Üyeliği durduruldu
    scriptin üyelik sistemi mevcutmu, yoksa ziyatetçi yöntemi ilemi çalışıyor, session ve cookie kullanılıyormu ?
  • 04-02-2009, 18:59:05
    #3
    devturkeli adlı üyeden alıntı: mesajı görüntüle
    scriptin üyelik sistemi mevcutmu, yoksa ziyatetçi yöntemi ilemi çalışıyor, session ve cookie kullanılıyormu ?
    Ewet uyelik var
    kullanıcı girisi felan var

    yukarda verdigim kodlar
    veritabanındaki online bolumundeki ip alanından ipleri cekiyor
  • 04-02-2009, 19:04:06
    #4
    Üyeliği durduruldu
    online tablusunun şemasını aşağıdaki gibi buraya yazarsan ona göre kod uyarlayabilirim.

    ör:
         session id       ------  integer (7)
         session_data   -----  varchar (50)
         session_sid     ------ varchar (50)
    gibi...
  • 04-02-2009, 19:11:38
    #5
    devturkeli adlı üyeden alıntı: mesajı görüntüle
    online tablusunun şemasını aşağıdaki gibi buraya yazarsan ona göre kod uyarlayabilirim.
    ör:
         session id       ------  integer (7)
         session_data   -----  varchar (50)
         session_sid     ------ varchar (50)
    gibi...
    online tablosunda iki alan tek var
    timestamp int(15)
    ip (varchar (40)
    file (varchar (100)
  • 04-02-2009, 19:34:36
    #6
    Üyeliği durduruldu
    anladığım kadarıyla scriptin ip ile ziyaretçi mantıgı ile çalışıyor sadece, çünki online tablosunda username veya userid gibi, o useri tanımlayacak alanlar yok.
    Eğer doğruysam şu şekilde sadece ip adreslerini çekip gösterebilirsin.

    <?php
    $online_sql =  mysql_query("SELECT ip FROM online");
    $online = array();
    while ($online_data = mysql_fetch_array($online_sql)) {
        array_push($online, $online_data['ip']);
    }
    ?>
    bu şekilde online üyelerin $online değişkenine dizi olarak atanır ve foreach ile çıkarıp anasayfada gösterebilirsin.

    ör:

    Sitemizde şuanda <b><?php echo count($online); ?></b> online bulunmaktadır.<br><br>
    <?php
    foreach ($online as $online_ip) {
        echo "<a href=''>{$online_ip}</a>,&nbsp;";
    }
    ?>
    gibi...
  • 04-02-2009, 19:57:39
    #7
    peki baska bir tablodan bu durumu saglayamazmıyız
    neden illa online alanı ?

    online tablosunun içinde
    timestamp int(15) isminde bir alan var ondan dolayımı ?
    peki onu taşıyamazmıyız ?
  • 04-02-2009, 20:05:31
    #8
    Üyeliği durduruldu
    Alıntı
    peki baska bir tablodan bu durumu saglayamazmıyız
    neden illa online alanı ?
    sağlarsın, fakat tam bir online sistemi için online kullanıcı olarak user_id nosu yada user_name, user_ip, user_session_id gibi bunların kaydedilmesi, belirli bir surede silinmesi ve bunun için verdigin kod gibi bir kod eklenmesi gerekiyor.

    bu durumda script ve sql dosyası olmadan tahminen kod yazamayız.
  • 04-02-2009, 20:10:05
    #9
    Ok. verdigin bilgiler için çok tşk ettim
    Iyi Calısmalar arkadaşım..