• 19-11-2008, 18:14:28
    #1
    Merhaba ip kaydetme scripti yazmaya çalışıyorum ama birkaç özelliği scripte ekleyemedim. Php programlamaya yeni başladığımdan dolayı bakar mısınız ?

    $browser = getenv("HTTP_USER_AGENT");
    $computername = getenv("COMPUTERNAME");
    $gmt = +7;
    $ip = getenv("REMOTE_ADDR");
    $proxy = getenv(" ");
    $serverdate = date("d.m.Y");
    $servertime = date("H:i:s");
    $turkeytime = date("H:i:s",(time()+3600*$gmt));
    $turkeydate = date("d.m.Y");
    $log = "\n\nIP Adresi: $ip\nVekil Sunucu Adresi: $proxy\nBilgisayar Adı: $computername\nSunucu Saati: $servertime\nSunucu Tarihi: $serverdate\nTürkiye Saati: $turkeytime\nTürkiye Tarihi: $turkeydate\nTarayıcı: $browser";
    $fa = fopen("rec", "a");
    $db = "$log";
    fwrite($fa, $db);
    fclose($fa);
    exit;
    ?>
    Kullanıcının Proxy Adresini almak için $proxy = getenv(" "); kısmına hangi kodu girmeliyim ?
    Sunucu tarihi A.B.D.'ye göre ayarlanmış, Türkiye'de tarih 19 kasımken, A.B.D.'de tarih 18 kasım. Buna göre tarih farkını nasıl ayarlarım ?
    Teşekkürler.
  • 19-11-2008, 18:27:30
    #2
    HTTP_X_FORWARD tan yola çıkabilirsin, şu an y.dışı çalışmıyor, örnek yazamadım.
  • 19-11-2008, 19:19:57
    #3
    Kendi kullandığım fonksiyon proxiye takılmaz sanırsam;
    <?
    function userip(){
    
       if (isSet($_SERVER)){
    
           if (isSet($_SERVER["HTTP_X_FORWARDED_FOR"])) {
    
               $IP = $_SERVER["HTTP_X_FORWARDED_FOR"];
    
           } elseif (isSet($_SERVER["HTTP_CLIENT_IP"])) {
    
               $IP = $_SERVER["HTTP_CLIENT_IP"];
    
           } else {
    
               $IP = $_SERVER["REMOTE_ADDR"];
    
           }
    
       } else {
    
           if ( getenv( 'HTTP_X_FORWARDED_FOR' ) ) {
    
               $IP = getenv( 'HTTP_X_FORWARDED_FOR' );
    
           } elseif ( getenv( 'HTTP_CLIENT_IP' ) ) {
    
               $IP = getenv( 'HTTP_CLIENT_IP' );
    
           } else {
    
               $IP = getenv( 'REMOTE_ADDR' );
    
           }
    
       }
    
       return $IP;
    
    }
    echo userip();
    ?>
  • 19-11-2008, 23:30:14
    #4
    Peki tarih farkını nasıl yapacağım.
    Teşekkürler
  • 19-11-2008, 23:42:34
    #5
    Üyeliği durduruldu
    Öyle uğraşma, Aşağıdaki ip.txt içerisine yazdırır.ip.txt chmod 777 olucak tabi. Biraz editlersen Güzelce kullanabilirsin.

    <?
    $ip = $_SERVER['REMOTE_ADDR'];
        if ( !file_exists("ip.txt")) {
            touch("ip.txt");
            $file = @fopen("ip.txt", "+r");
            @fclose($file);
            header( 'refresh: 1; url=/' );
            } else {
            $file = @fopen("ip.txt", "a");
            $text = "-----------------------------". "\r\n" . "Tarih : " . date('d/m/Y - H:i') . "\r\n" . "IP Adresi :" . "\r\n" . $ip . "\r\n". "-----------------------------" . "\r\n";
            @fwrite($file, $text);
            @fclose($file);
            } 
    ?>
  • 19-11-2008, 23:49:26
    #6
    Kokoin adlı üyeden alıntı: mesajı görüntüle
    Öyle uğraşma, Aşağıdaki ip.txt içerisine yazdırır.ip.txt chmod 777 olucak tabi. Biraz editlersen Güzelce kullanabilirsin.
    aynı kod zaten ?
  • 20-11-2008, 02:11:36
    #7
    Üyeliği durduruldu
    ilk msjımı konuyu okumadan başlığına göre yazmıştım, şimdi son problemini, Saat farki ile alabilirsin.
     $saatfarki = "8";  
            $farki = (date("H") + ($saatfarki));
            $gerial = mktime( $farki , date("i"), date("s"), date("m"), date("d"), date("Y"));
            $tarih = date("Y-m-d",$gerial);
             $zaman = date("H:i:s",$gerial);
            echo $zaman ;
    veya time kullanarakta bunu 3600 ile çarptirip toplayabilirsin.
    $saatfarki=2;
    $zaman=time();
    $zaman=$zaman+($saatfarki*3600);
    gibi..
  • 23-11-2008, 21:45:54
    #8
    Teşekkürler