Hi,
ich habe mir ein PHP-Skript zusammengebastelt, das sowas auswertet:
hier ein Ausschnitt. Die Informationen zur Auswertung habe ich mir zusammen gesucht, und habe auch eigene Erfahrungen gemacht.
Ob es sich um Opera handelt sollte zB immer zuerst geprüft werden, da dieser Browser auch andere Identitäten annehmen kann.
Auf Mozilla sollte erst am Schluss geprüft werden, da viele Browser das Codewort "Mozilla" benutzen.
Auch die seltsame Windows ME Kennung musste ich erstmal suchen...
Windows CE (für Pocket PC) kannte ich auch lange Zeit nicht.
Hier das Skript ($row[http_user_agent] stellt $HTTP_USER_AGENT dar):
if(eregi("NT 5.1", $row[http_user_agent]) || eregi("Windows XP", $row[http_user_agent]))
{
$platforms["Windows XP"]++;
}
else if(eregi("Windows 2000", $row[http_user_agent]) || eregi("Win2000", $row[http_user_agent]) || eregi("NT 5.0", $row[http_user_agent]))
{
$platforms["Windows 2000"]++;
}
else if(eregi("Win 9x 4.90", $row[http_user_agent]) || eregi("WinME", $row[http_user_agent]) || eregi("Windows ME", $row[http_user_agent]))
{
$platforms["Windows ME"]++;
}
else if(eregi("NT", $row[http_user_agent]))
{
$platforms["Windows NT"]++;
}
else if(eregi("Win98", $row[http_user_agent]) || eregi("Windows 98", $row[http_user_agent]))
{
$platforms["Windows 98"]++;
}
else if(eregi("Win95", $row[http_user_agent]) || eregi("Windows 95", $row[http_user_agent]))
{
$platforms["Windows 95"]++;
}
else if(eregi("Windows CE", $row[http_user_agent]))
{
$platforms["Windows CE (Pocket PC)"]++;
}
else if(eregi("Win", $row[http_user_agent]))
{
$platforms["Windows (andere)"]++;
}
else if(eregi("Mac", $row[http_user_agent]))
{
$platforms["Macintosh"]++;
}
else if(eregi("Unix", $row[http_user_agent]) || eregi("hp-ux", $row[http_user_agent]))
{
$platforms["Unix"]++;
}
else if(eregi("X11", $row[http_user_agent]) || eregi("Linux", $row[http_user_agent]) || eregi("Konqueror", $row[http_user_agent]))
{
$platforms["Linux"]++;
}
else if(eregi("OS/2", $row[http_user_agent]))
{
$platforms["OS/2"]++;
}
else if(eregi("SunOS", $row[http_user_agent]))
{
$platforms["SunOS"]++;
}
else if(eregi("BeOS", $row[http_user_agent]))
{
$platforms["BeOS"]++;
}
else if(eregi("FreeBSD", $row[http_user_agent]))
{
$platforms["FreeBSD"]++;
}
else if(eregi("OpenBSD", $row[http_user_agent]))
{
$platforms["OpenBSD"]++;
}
else if(eregi("Irix", $row[http_user_agent]))
{
$platforms["Irix"]++;
}
else if(eregi("Plan9", $row[http_user_agent]))
{
$platforms["Plan9"]++;
}
else if(eregi("OSF", $row[http_user_agent]))
{
$platforms["OSF"]++;
}
else
{
$platforms[$row[http_user_agent]]++;
}
if(eregi("Opera[ |/]{0,1}([1-9])", $row[http_user_agent], $regs))
{
$browsers["Opera $regs[1]"]++;
}
else if(eregi("Konqueror/([1-9])", $row[http_user_agent], $regs))
{
$browsers["Konqueror $regs[1]"]++;
}
else if(eregi("Netscape[ |/]{0,1}([1-9])", $row[http_user_agent], $regs))
{
$browsers["Netscape $regs[1]"]++;
}
else if(eregi("MSIE ([1-9])", $row[http_user_agent], $regs))
{
$browsers["MS Internet Explorer $regs[1]"]++;
}
else if(eregi("Chimera[ |/]{0,1}([0-9].[1-9])", $row[http_user_agent], $regs))
{
$browsers["Chimera $regs[1]"]++;
}
else if(eregi("Dillo", $row[http_user_agent], $regs))
{
$browsers["Dillo"]++;
}
else if(eregi("DocZilla/([1-9])", $row[http_user_agent], $regs))
{
$browsers["DocZilla $regs[1]"]++;
}
else if(eregi("Galeon[ |/]{0,1}([0-9].[1-9])", $row[http_user_agent], $regs))
{
$browsers["Galeon $regs[1]"]++;
}
else if(eregi("iCab[ |/]{0,1}([1-9])", $row[http_user_agent], $regs))
{
$browsers["iCab $regs[1]"]++;
}
else if(eregi("ICE Browser[ |/]{0,1}([1-9])", $row[http_user_agent], $regs))
{
$browsers["ICE Browser $regs[1]"]++;
}
else if(eregi("K-Meleon[ |/]{0,1}([0-9].[1-9])", $row[http_user_agent], $regs))
{
$browsers["K-Meleon $regs[1]"]++;
}
else if(eregi("Oregano", $row[http_user_agent], $regs))
{
$browsers["Oregano"]++;
}
else if(eregi("Phoenix[ |/]{0,1}([0-9].[1-9])", $row[http_user_agent], $regs))
{
$browsers["Phoenix $regs[1]"]++;
}
else if(eregi("amaya/([1-9])", $row[http_user_agent], $regs))
{
$browsers["Amaya $regs[1]"]++;
}
else if(eregi("Safari", $row[http_user_agent]))
{
$browsers["Safari"]++;
}
else if(eregi("Mozilla", $row[http_user_agent]) && eregi("Gecko", $row[http_user_agent]))
{
$browsers["Mozilla"]++;
}
else if(eregi("Mozilla/([1-9])", $row[http_user_agent], $regs))
{
$browsers["Netscape $regs[1]"]++;
}
else
{
$browsers[$row[http_user_agent]]++;
}
das Skript liest mir Datenbankeinträge aus! daher $row[] und erstellt mir eine Statistik.
Siehe
http://www.abi01-wrg.de/statistik.php4
http://www.sixpack-band.de/statistik.php4
Eine Seite die mir dabei sehr geholfen hat ist:
http://www.zytrax.com/tech/web/browser_ids.htm
Gruß
Christian