Autor |
Nachricht |
batzen
Threadersteller
Dabei seit: 21.05.2007
Ort: Berlin
Alter: 35
Geschlecht:
|
Verfasst Mi 18.02.2009 18:18
Titel User_Agent auswerten |
|
|
Hallo zusammen..
Ich möchte für eine Statistik die Server-Variable user_agent auswerten, um Browser + OS zu erkennen.
Kennt dafür jemand vlt. einen passenden Code-Schnipsel?
Gruß, Batzen..
|
|
|
|
|
Synoxis
Dabei seit: 07.09.2005
Ort: Roßdorf
Alter: 35
Geschlecht:
|
Verfasst Do 19.02.2009 01:06
Titel
|
|
|
Code: | <?php echo $_SERVER['HTTP_USER_AGENT']; ?> |
|
|
|
|
|
Anzeige
|
|
|
batzen
Threadersteller
Dabei seit: 21.05.2007
Ort: Berlin
Alter: 35
Geschlecht:
|
Verfasst Do 19.02.2009 18:09
Titel
|
|
|
Synoxis hat geschrieben: | Code: | <?php echo $_SERVER['HTTP_USER_AGENT']; ?> |
|
Danke, aber wie man eine Variable ausgibt ist mir bekannt. Es ging mir mehr um das auswerten der Informationen in diesem String.
|
|
|
|
|
Smooth-Graphics
Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht:
|
|
|
|
|
batzen
Threadersteller
Dabei seit: 21.05.2007
Ort: Berlin
Alter: 35
Geschlecht:
|
Verfasst Do 19.02.2009 18:42
Titel
|
|
|
Danke, die Funktion kenne ich. Das Problem ist nur die Abhängigkeit von der browscap.ini.
Da diese Datei nicht auf jedem Server mitinstalliert ist, wird das Programm zwangsweise nicht überall laufen. Wollte das möglichst umgehen. Dachte es gibt vlt. einen Codeschnipsel, der den String quasi "zu Fuß" auseinandernimmt. Die gängigsten Systeme und Browser würden da ja vollkommen reichen.
|
|
|
|
|
choise
Dabei seit: 01.02.2007
Ort: Würzburg
Alter: 35
Geschlecht:
|
Verfasst Do 19.02.2009 18:44
Titel
|
|
|
naja, dann schau dir den http user agent von ein paar browsern an und zerpflück ihn mit ner regex.
preg_match,eregi etc können helfen.
€:
hier ma n snippet aus den php.net comments:
Code: |
<?php
class Browser {
/**
Figure out what browser is used, its version and the platform it is
running on.
The following code was ported in part from JQuery v1.3.1
*/
public static function detect() {
$userAgent = strtolower($_SERVER['HTTP_USER_AGENT']);
// Identify the browser. Check Opera and Safari first in case of spoof. Let Google Chrome be identified as Safari.
if (preg_match('/opera/', $userAgent)) {
$name = 'opera';
}
elseif (preg_match('/webkit/', $userAgent)) {
$name = 'safari';
}
elseif (preg_match('/msie/', $userAgent)) {
$name = 'msie';
}
elseif (preg_match('/mozilla/', $userAgent) && !preg_match('/compatible/', $userAgent)) {
$name = 'mozilla';
}
else {
$name = 'unrecognized';
}
// What version?
if (preg_match('/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/', $userAgent, $matches)) {
$version = $matches[1];
}
else {
$version = 'unknown';
}
// Running on what platform?
if (preg_match('/linux/', $userAgent)) {
$platform = 'linux';
}
elseif (preg_match('/macintosh|mac os x/', $userAgent)) {
$platform = 'mac';
}
elseif (preg_match('/windows|win32/', $userAgent)) {
$platform = 'windows';
}
else {
$platform = 'unrecognized';
}
return array(
'name' => $name,
'version' => $version,
'platform' => $platform,
'userAgent' => $userAgent
);
}
}
Usage:
$browser = TkBrowser::detect();
echo 'You browser is '.$browser['name'].' version '.$browser['version'].' running on '.$browser['platform'];
?> |
Zuletzt bearbeitet von choise am Do 19.02.2009 18:47, insgesamt 1-mal bearbeitet
|
|
|
|
|
batzen
Threadersteller
Dabei seit: 21.05.2007
Ort: Berlin
Alter: 35
Geschlecht:
|
Verfasst Do 19.02.2009 19:00
Titel
|
|
|
Jo, danke. Ich fürchte darauf wird es hinauslaufen.
Hatte einfach gehofft es gäbe vlt. irgendeine OpenSource Klasse mit den entsprechenden Definitionen. Ist halt recht zeitaufwändig das alles zu zerpflücken.
|
|
|
|
|
|
|
|
Ähnliche Themen |
User Agent Profile benutzen? - mobile Internetseiten
[php]logfiles auswerten
Fragebogen mit PHP auswerten!!!
HTML Formular auswerten
Subdomain-Name einer URL auswerten zum weiterarbeiten?
Checkboxen auswerten und per Mail versenden
|
|