• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Browseranzeige auf Website

S

SourceCode

Guest
Hallo,

ihr kennt doch bestimmt dass, wenn man auf ne Website geht, das da steht "Sie Surfen mit Firefox" oder ähnlich.

Ich weiß, wie ich den Useragent mit PHP auslesen kann aber wie kann ich es umsetzen dass zum Beispiel wenn jemand mit Chrome surft, angezeigt bekommt "Sie surfen mit Chrome".

Mal so als Beispiel:

PHP:
if($useragent == "Firefox")
{
     echo "Sie surfen mit Mozilla Firefox" ;
}
if($useragent == "Chrome")
{
     echo "Sie surfen mit Google Chrome" ;
}

Der Code war jetzt aus der Luft aufgegriffen aber nur damit Ihr wisst, was ich meine!

Google sagt mir nichts, da ich nicht genau weiß, wie ich es beschreiben soll! :evil:

Vielen Dank schonmal im Vorraus :)
 
Zuletzt bearbeitet von einem Moderator:
ALso ich mach das so:

Code:
<?php
error_reporting(0);


echo"<h1>Browser</h1>";


//IP Adress
function ipadress()
{
$ipadress = $_SERVER["REMOTE_ADDR"];
print_r($ipadress);
}


echo"Your IP Adress: ";ipadress();echo"<br/>";


//Referer
function referer()
{
$referer = $_SERVER['HTTP_REFERER']; 
print_r($referer);
}


echo"You come from: ";referer();echo"<br/>";


//Browser
function getBrowser() 
{ 
    $u_agent = $_SERVER['HTTP_USER_AGENT']; 
    $bname = 'Unknown';
    $platform = 'Unknown';
    $version= "";


    //First get the platform?
    if (preg_match('/linux/i', $u_agent)) {
        $platform = 'linux';
    }
    elseif (preg_match('/macintosh|mac os x/i', $u_agent)) {
        $platform = 'mac';
    }
    elseif (preg_match('/windows|win32/i', $u_agent)) {
        $platform = 'windows';
    }
    
    // Next get the name of the useragent yes seperately and for good reason
    if(preg_match('/MSIE/i',$u_agent) && !preg_match('/Opera/i',$u_agent)) 
    { 
        $bname = 'Internet Explorer'; 
        $ub = "MSIE"; 
    } 
    elseif(preg_match('/Firefox/i',$u_agent)) 
    { 
        $bname = 'Mozilla Firefox'; 
        $ub = "Firefox"; 
    } 
    elseif(preg_match('/Chrome/i',$u_agent)) 
    { 
        $bname = 'Google Chrome'; 
        $ub = "Chrome"; 
    } 
    elseif(preg_match('/Safari/i',$u_agent)) 
    { 
        $bname = 'Apple Safari'; 
        $ub = "Safari"; 
    } 
    elseif(preg_match('/Opera/i',$u_agent)) 
    { 
        $bname = 'Opera'; 
        $ub = "Opera"; 
    } 
    elseif(preg_match('/Netscape/i',$u_agent)) 
    { 
        $bname = 'Netscape'; 
        $ub = "Netscape"; 
    } 
    
    // finally get the correct version number
    $known = array('Version', $ub, 'other');
    $pattern = '#(?<browser>' . join('|', $known) .
    ')[/ ]+(?<version>[0-9.|a-zA-Z.]*)#';
    if (!preg_match_all($pattern, $u_agent, $matches)) {
        // we have no matching number just continue
    }
    
    // see how many we have
    $i = count($matches['browser']);
    if ($i != 1) {
        //we will have two since we are not using 'other' argument yet
        //see if version is before or after the name
        if (strripos($u_agent,"Version") < strripos($u_agent,$ub)){
            $version= $matches['version'][0];
        }
        else {
            $version= $matches['version'][1];
        }
    }
    else {
        $version= $matches['version'][0];
    }
    
    // check if we have a number
    if ($version==null || $version=="") {$version="?";}
    
    return array(
        'userAgent' => $u_agent,
        'name'      => $bname,
        'version'   => $version,
        'platform'  => $platform,
        'pattern'    => $pattern
    );
} 


// now try it
$ua=getBrowser();
$yourbrowser= "Your browser: " . $ua['name'] . " " . $ua['version'] . " " ;
$yourbs= "Your BS : " .$ua['platform'] . " <br/>" ;
print_r($yourbs);
print_r($yourbrowser);
?>

ja nicht alles perfekt aber es funktioniert :)

Einfach copy&paste und mal testen !
 
ihr kennt doch bestimmt dass, wenn man auf ne Website geht, das da steht "Sie Surfen mit Firefox"
Ja und ich finde das ziemlich falsch, wenn ich mit Opera surfe und da steht firefox.

Was ich damit sagen will ist folgendes:
1. kann man den Useragenten verändern/fälschen.
2. Weiss ich selbst am besten womit ich im Internet unterwegs bin, da brauch ich diesen tollen Hinweis nicht.

Solltest du etwas anderes vorhaben, solltest du dir das immer vor Augen halten, das man sich darauf nicht verlassen kann.
 
@maria1:
Super, danke, der funktioniert und der reicht mir schon fürs erste. Ich brauche nur den Browser also werde ich das gleich mal bearbeiten. :D

@wustersoss:
Mh, das ist schon klar, ich weiß auch mit welchem Browser ich unterwegs bin. Ich brauch das ja nicht für die Logfiles sondern für was anderes. Aber trotzdem vielen Dank für den Hinweis! :)

MFG SourceCode
 
Zuletzt bearbeitet von einem Moderator:
Zurück
Oben