To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

HTML/PHP/AJAX/JS - Skrypt taki jak na przemo.org

WoGuziczek - 31-01-2008, 16:21
Temat postu: Skrypt taki jak na przemo.org
Witam!

Zgłaszam prośbę o zapodanie mi skryptu na stronę, który wyświetałby mi dokładnie
takie same informacje jak na stronie głownej przemo.org na samym dole.

Mam skrypt, ale wyświetlania samego IP i przeglądarki.
Ale taki, który wyświetla dokładnie proxy, host, system i w ogóle te bajery to jeszcze nie :)

Pozdrawiam :)

koziolek - 31-01-2008, 16:44

prosze:
Kod:
if(empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
    echo 'IP: ' . $_SERVER['REMOTE_ADDR'] . '( ' . @gethostbyaddr($_SERVER['REMOTE_ADDR']) . ')';
}
else
{
    echo 'IP klienta: ' . $_SERVER['HTTP_X_FORWARDED_FOR'] . '( ' . @gethostbyaddr($_SERVER['HTTP_X_FORWARDED_FOR']) . ')<br>IP Proxy: ' . $_SERVER['REMOTE_ADDR'] . '( ' . @gethostbyaddr($_SERVER['REMOTE_ADDR']) . ')';
}
nie jest dokładnie tak samo jak u Przema :P
a tam wogóle nie rozpoznaje systemu tylko wyświetla User Agent ($_SERVER["HTTP_USER_AGENT"]) + coś tam jeszcze (chyba - $_SERVER["HTTP_ACCEPT_LANGUAGE"]) ;)

co do rozpoznawania systemu i przeglądaki to możesz chyba sobie wziąźć funkcje z phpBB2 by Przemo (z małą zmianą) ;)
Kod:
function user_agent($agent)
{
    $agent_tst = ' ' . strtolower($agent);
    $sa = $ba = '';

    if (
        strpos($agent_tst, 'windows') ||
        strpos($agent_tst, 'win9') ||
        strpos($agent_tst, 'win32') ||
        strpos($agent_tst, 'nt 5.') ||
        strpos($agent_tst, 'nt 4') )
    {
        $sa = (
            strpos($agent_tst, 'windows 9') ||
            strpos($agent_tst, 'nt 4') ||
            strpos($agent_tst, 'windows') ||
            strpos($agent_tst, 'win32') ) ? 'windows_98_nt_2000' : $sa;
        $sa = (
            strpos($agent_tst, 'nt 5.') ||
            strpos($agent_tst, 'nt 6.') ||
            strpos($agent_tst, 'nt 7.') ||
            strpos($agent_tst, 'nt 8.') ) ? 'windows_xp_2003' : $sa;
        $sa = (strpos($agent_tst, 'nt 5.0')) ? 'windows_98_nt_2000' : $sa;
    }
    else
    {
        $sa = (strpos($agent_tst, 'linux')) ? 'linux' : $sa;
        $sa = (strpos($agent_tst, 'suse')) ? 'linux_suse' : $sa;
        $sa = (strpos($agent_tst, 'knoppix')) ? 'linux_knoppix' : $sa;
        $sa = (strpos($agent_tst, 'turbolinux')) ? 'linux_turbolinux' : $sa;
        $sa = (strpos($agent_tst, 'slackware')) ? 'linux_slackware' : $sa;
        $sa = (strpos($agent_tst, 'gentoo')) ? 'linux_gentoo' : $sa;
        $sa = (strpos($agent_tst, 'lycoris')) ? 'linux_lycoris' : $sa;
        $sa = (strpos($agent_tst, 'debian')) ? 'linux_debian' : $sa;
        $sa = (strpos($agent_tst, 'redhat')) ? 'linux_redhat' : $sa;
        $sa = (strpos($agent_tst, 'archlinux')) ? 'linux_arch' : $sa;
        $sa = (strpos($agent_tst, 'ubuntu')) ? 'linux_ubuntu' : $sa;
        $sa = (strpos($agent_tst, 'bsd')) ? 'linux_freebsd' : $sa; // I know, sorry :)
    }
    if ( $sa == '')
    {
        $sa = (strpos($agent_tst, 'mac')) ? 'macos' : $sa;
        $sa = (strpos($agent_tst, 'aix')) ? 'aix' : $sa;
        $sa = (strpos($agent_tst, 'lindows')) ? 'lindows' : $sa;
        $sa = (strpos($agent_tst, 'amiga')) ? 'amiga' : $sa;
        $sa = (strpos($agent_tst, 'athe')) ? 'athe' : $sa;
        $sa = (strpos($agent_tst, 'beos')) ? 'beos' : $sa;
        $sa = (strpos($agent_tst, 'zeta')) ? 'beos' : $sa;
        $sa = (strpos($agent_tst, 'BlueEyed')) ? 'beos' : $sa;
        $sa = (strpos($agent_tst, 'nextstep')) ? 'nextstep' : $sa;
        $sa = (strpos($agent_tst, 'warp')) ? 'warp' : $sa;
        $sa = (strpos($agent_tst, 'qnx')) ? 'qnx' : $sa;
        $sa = (strpos($agent_tst, 'risc')) ? 'risc' : $sa;
        $sa = (strpos($agent_tst, 'solaris')) ? 'solaris' : $sa;
        $sa = (strpos($agent_tst, 'unix')) ? 'unix' : $sa;
        $sa = (strpos($agent_tst, 'macos')) ? 'macos' : $sa;
        $sa = (strpos($agent_tst, 'mac os')) ? 'macos' : $sa;
        $sa = (strpos($agent_tst, 'symbian')) ? 'symbian' : $sa;
        $sa = ($sa == '' &&
            strpos($agent_tst, 'win9') ||
            strpos($agent_tst, 'win3') ||
            strpos($agent_tst, 'windows') ) ? 'windows_98_nt_2000' : $sa;
    }
   
    $ba = (strpos($agent_tst, 'mozilla')) ? 'mozilla' : $ba;
    $ba = (strpos($agent_tst, 'msie')) ? 'ie' : $ba;
    $ba = (strpos($agent_tst, 'netscape')) ? 'netscape' : $ba;
    $ba = (strpos($agent_tst, 'opera')) ? 'opera' : $ba;
    $ba = (strpos($agent_tst, 'konqueror')) ? 'konqueror' : $ba;
    $ba = (strpos($agent_tst, 'galeon')) ? 'galeon' : $ba;
    $ba = (strpos($agent_tst, 'firefox')) ? 'firefox' : $ba;
    $ba = (strpos($agent_tst, 'netsprint')) ? 'netsprint' : $ba;
    $ba = (strpos($agent_tst, 'firebird')) ? 'firebird' : $ba;
    $ba = (strpos($agent_tst, 'links')) ? 'links' : $ba;
    $ba = (strpos($agent_tst, 'dillo')) ? 'dillo' : $ba;
    $ba = (strpos($agent_tst, 'omniweb')) ? 'omniweb' : $ba;
    $ba = (strpos($agent_tst, 'avant')) ? 'avant' : $ba;
    $ba = (strpos($agent_tst, 'myie2')) ? 'myie2' : $ba;
    $ba = (strpos($agent_tst, 'seamonkey')) ? 'seamonkey' : $ba;
    $ba = (strpos($agent_tst, 'maxthon')) ? 'maxthon' : $ba;

    $ba = ($ba == '') ? 'unknown' : $ba;
    $sa = ($sa == '') ? 'unknown' : $sa;

    return array($sa, $ba, $agent);
}


[ Dodano: 31-01-2008, 16:48 ]
jakbyś nie wiedział jak użyć funkcji to dam instrukcje ;)
Kod:
$info = user_agent($_SERVER["HTTP_USER_AGENT"]);
echo 'Twój system to: ' . $info[0] . '<br>Twoja przeglądarka to: ' . $info[1];



Powered by phpBB modified by Przemo © 2003 phpBB Group