Autor Zpráva
perwin
Profil
Ahoj,
potřebuju zjistit, jestli se dá nějak PHPčkem vypsat nějaký specifický kód pro PC z sítě. Něco jako je IP, ale aby to bylo rozdílné i pro každý PC v jedné síti. Totiž potřebuju když někdo chodí na stránku ze stránky na webu, aby se tam pokaždé načetl 1 a ten samý kód toho počítače, ale aby byl specifický jenom pro ten jeden PC. Protože $_SERVER['REMOTE_ADDR'] - IP je stejné pro všechny PC v jedné síti. Děkuji
marcus33cz
Profil
No to, co bys potřeboval, je nejspíše MAC (fyzická) adresa, ale i u té může nastat situace, že dvě zařízení budou mít stejnou. Navíc ji asi těžko zjistíš. :-)

Můžeš to zkusit rozlišovat podle klienta - tzn. v první řadě IP a když se IP shoduje, tak porovnat, zda je klient (prohlížeč/systém) stejný. Otisk klienta je tuším v $_SERVER['HTTP_USER_AGENT']
Ale zase je tady problém, že někdo může chvíli používat Operu a pak na chvíli Explorer a podobně. Takže mě napadá jedině udělat registraci uživatelů.
ShiraNai7
Profil
Identifikovat konkrétního klienta můžeš třeba přes cookies.
perwin
Profil
ShiraNai7:
Jak pomocí cookies?
ShiraNai7
Profil
Uložíš cookie pomocí PHP funkce setcookie() a na základě ní můžeš do jisté míry zjišťovat unikátnost klienta.
perwin
Profil
ShiraNai7:
Vím, jak to cookie nastavit, ale jak se prosímtě jmenuje ta funkce na zjištění unikátnosti klienta? Nebo nemáš prosím nějaký příklad? Dík
ShiraNai7
Profil
To není žádná funkce.. ale můžeš si ji vyrobit. Funkce co vrátí vždycky unikátní identifikční kód a použije pro to cookies. Pokud to potřebuješ pouze krátkodobě, tak k tomu jsou PHP sessions (google).
ShiraNai7
Profil
Tak jsem něco sepsal... pomocí cookies. Ale pamatuj že stačí smazat cookies nebo změnit prohlížeč a ID je jiné.

function unikatni_id()
{
    
    static $jmeno_cookie = 'unikatni_id', $platnost_cookie = 31104000; // 1 rok
    if(isset($_COOKIE[$jmeno_cookie]) && preg_match('%^[a-zA-Z0-9\-.]+$%', $_COOKIE[$jmeno_cookie]) === 1) {
        return $_COOKIE[$jmeno_cookie];
    }

    $newid = uniqid('', true);
    setcookie($jmeno_cookie, $newid, time() + $platnost_cookie, '/');
    return $newid;

}
WertriK
Profil
perwin:
V php to v podstatě udělat dost dobře nejde (navíc ne 100%). Trošku jsem to popsal zde, je to identifikace uživatele pro anketu - je to vesměs stejné.

Budu ti fandit. Když na to dojdeš, budu rád, když dáš vědět.


GL!
ShiraNai7
Profil
Nevím k jakému účelu to potřeboval. Nejúčinější identifikace je databáze uživatelů a přihlášování.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0