1

更新

この質問は、時代遅れで最悪のアプローチを暴露したものでvisitors countあり、誰もが避けるべきものです。洗練されたカウンターを使用してください。

4

6 に答える 6

4

$_SERVER['REMOTE_ADDR']通常、変数を介して IP アドレスを取得できます。

于 2013-03-28T16:56:39.757 に答える
1

こんにちは、これは私が訪問者のIPを登録するために使用しているものです。

function get_IP() {

    // ADRES IP
    if     (getenv('HTTP_CLIENT_IP'))       $ipaddress = getenv('HTTP_CLIENT_IP');
    else if(getenv('HTTP_X_FORWARDED_FOR')) $ipaddress = getenv('HTTP_X_FORWARDED_FOR');
    else if(getenv('HTTP_X_FORWARDED'))     $ipaddress = getenv('HTTP_X_FORWARDED');
    else if(getenv('HTTP_FORWARDED_FOR'))   $ipaddress = getenv('HTTP_FORWARDED_FOR');
    else if(getenv('HTTP_FORWARDED'))       $ipaddress = getenv('HTTP_FORWARDED');
    else if(getenv('REMOTE_ADDR'))          $ipaddress = getenv('REMOTE_ADDR');
    else                                    $ipaddress = 'UNKNOWN';
    //
    return $ipaddress;
}
于 2016-04-20T10:05:33.803 に答える
0

ファイルを自動的に作成する w+ でファイルを開くことで、コードを少し節約できます。

<?php
// Inits
$file = "/tmp/counts.html";
$cookie_namee='mycounterr-456';

// File, created if !exists
$fh = fopen($file, 'w+');
// Get the count, 0 if the file is empty or just created
$count = (int)fgets($fh);

//if cookie isn't already set,then increase counts 
//by one + save ip, and set a cookie to pc...
if (!isset($_COOKIE[$cookie_namee])) {
    // Increment and write the new count
    fwrite($fh, ++$count);
    setcookie($cookie_namee, "Checked", time() + 111400);
}

fclose($fh);

IP などでカウントを強制する本当に簡単な方法が必要な場合は、Redisをチェックアウトする必要があります。

于 2013-03-28T17:11:27.553 に答える