PHP / Tipps / Browsererkennung

von: Werner Zenk

Browsererkennung über den HTTP_USER_AGENT.

Browsererkennung Demo:
CCBot/1.0 (+http://www.commoncrawl.org/bot.html)

Quelltext:bsp_user_agent.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
$agent 
= (strstr($_SERVER["HTTP_USER_AGENT"], "Gecko") ? "Mozilla" "");
$agent .= (strstr($_SERVER["HTTP_USER_AGENT"], "Firefox") ? "Firefox" "");
$agent .= (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE") ? "MSIE" "");
$agent .= (strstr($_SERVER["HTTP_USER_AGENT"], "Avant") ? "Avant" "");
$agent .= (strstr($_SERVER["HTTP_USER_AGENT"], "Opera") ? "Opera" "");
$agent .= (strstr($_SERVER["HTTP_USER_AGENT"], "AppleWebKit") ? "AppleWebKit" "");
$agent .= (strstr($_SERVER["HTTP_USER_AGENT"], "Safari") ? "Safari" "");
$agent .= (strstr($_SERVER["HTTP_USER_AGENT"], "Konqueror") ? "Konqueror" "");
$agent .= (strstr($_SERVER["HTTP_USER_AGENT"], "Chrome") ? "Chrome" "");

switch (
$agent) {
 case 
"MSIE":
      echo 
"Internet Explorer";
      break;
 case 
"MSIEAvant":
      echo 
"Avant";
      break;
 case 
"MozillaFirefox":
      echo 
"Mozilla Firefox";
      break;
 case 
"Opera":
      echo 
"Opera";
      break;
 case 
"MozillaAppleWebKitSafari":
      echo 
"Safari";
      break;
 case 
"MozillaKonqueror":
      echo 
"Konqueror";
      break;
 case 
"MozillaAppleWebKitSafariChrome":
      echo 
"Google Chrome";
      break;
 default:
      echo 
$_SERVER["HTTP_USER_AGENT"];
 }
?>



List of User Agent Strings
    Und Ihre Meinung?
      Sie vermissen auf dieser Seite wichtige Informationen oder haben Hinweise für uns?
Kommentare: 15 » aufmachen   
pati9991:
und was ist mit dem avant browser?

Idownu:
if (ereg("Avant",$HTTP USER AGENT)) echo 'avant';

safari:
if (ereg(*Safari*,$HTTP USER AGENT)) echo 'safari';

CookIe:
habe heute glaube ich über 3 Stunden danach gesucht und NICHTS gefunden was mir wirklich weitergeholfen hat, und nun habe ich es .. DANKE! *sMiLe* =)

Flooo:
woah danke hat echt geholfen macht so weiter!

joerg:
gibts auch die möglichkeit für einen Default wert?

ouzo:
ja, einfach das ganze als switch aufbauen (php.net/switch)

EURoBa:
Danke! Hat mir sehr geholfen

julian-lehmann.com:
danke hat mir sehr geholfen nach dem langen suchen mal ein erfolg

Tox!c Wolf:
Vielleicht sollte noch erwaehnt werden, das man die Reihenfolge beachten muss. Bzw. Wenn man den IE vor Mozilla setzt, dann heisst es, man benutzt Mozilla. Der IE wird (ob wohl ich es nicht verstehe) als Mozilla ausgegeben... [HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; de) Slàn Tox!c Wolf

Pascal:
hi kleine frage kann ich ein Befehl einbetten das wenn es Firefox ist man weitergeleitet wird au z.B. site 1.htm und wenn irgendein anderer browser ist auf site 2.htm? thx im voraus

EsquadrAo:
was ist wenn den Server kein Php unterstützt, wie sieht dann denn script aus? esquadrao.de

Werner:
leer

404 Nicht gefunden:
Wenn der Server kein php unterstützt, kann man auf so Sachen wie Java Script zurückgreifen, wobei das nicht das Optimum ist.Den IE Speziell kann man auch mit <!--[if IE]>Du benutzt den Internet Explorer<![endif]-->erkennen...Das (besonders letzteres) sind aber wie gesagt keine vernünftigen Lösungen.

ojekt:
Also wenn man schon Codeschnipsel anbietet dann bitte nicht so etwas, das ist ja total schrecklich.

silberfisch:
@PascalDas geht einfach, du musst einfach nur die Bedingung erweitern, bzw. in den head-Bereich schreiben, mit einem meta-tag:für dein Firefox-beispiel, einfach die URI ändern, die Dauer, bis er weiterleitet und voila hast du's.silberfisch
Hilfe finden Sie im » netzgemein.de - Forum. Auch als „Gast” können Sie dort Fragen stellen!  
 Das könnte Sie interessieren:
Anzeigedauer des Inhalts auf einen bestimmten Zeitraum pro Tag begrenzen  Trinitätsoperator - (Short Conditional if-Anweisungen)  Rechenquiz - Mit diesem Quiz können Sie Rechenaufgaben lösen.  HTML-Tags aus der Zeichenkette entfernen  Zitate-Sammlung - Mit der Zitate-Sammlung etwas Abwechslung auf der Webseite erzeugen.  Sommerzeit berechnen  Informationen über die installierte GD-Grafikbibliothek  …mehr
© 2000-2012 Homepage-Total.de Kontakt - Impressum - Banner