Zaiendo Wir sind die Community


Neueste Ankündigungen:
Zaiendo.de ist auf FaceBook und Youtube.

Witz des Tages:
Der Mechaniker zum Kunden: "Ist das Ihr Wagen?"
"Zeitweise. Wenn er frisch gewaschen ist, gehört er meiner Tochter, bei Fußballspielen meinem Sohn und wenn er kaputt ist, gehört er mir."

Teilen auf:
Twitter Facebook Stumble Upon Delicious Google

Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
[Tutorial] Browser mit Php identifizieren
#1
Manchmal mag es ganz nützlich sein, zu wissen, welchen Browser der Nutzer verwendet und darauf eingehen zu können, wenn die Seite geladen wird.

So kann man zum Beispiel auf den Browser zugeschnittene CSS-Stylesheets oder Javascript Dateien ausgeben, bestimmten Browsern den Zugang verwehren oder Werbung für einen Browser anzeigen.

So funktioniert es mit Php über den HTTP User Agent, den der Browser anfangs dem Server mitteilt. Wichtig hierbei: Firefox gibt dem Nutzer zum Beispiel die Möglichkeit diesen User Agent zu ändern, die Resultate sind also nicht 100%ig sicher.

Script:
PHP-Code:
$user_agent $_SERVER['HTTP_USER_AGENT'];
echo 
$user_agent
Dieses einfache Script gibt uns den User Agenten zurück, mit dem wir bereits arbeiten können. Das Ergebnis könnte so aussehen:
Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12
In diesem Fall mit Firefox 2.0.0.12.

Das Ergebnis kann man natürlich durchsuchen und umformatieren, hier würde es sich anbieten es mit der Php-Funktion strtolower() in Kleinbuchstaben umzuwandeln und dann den String zum Beispiel nach dem Stichwort firefox zu durchsuchen, das könnte dann so aussehen:
PHP-Code:
$user_agent strtolower($_SERVER['HTTP_USER_AGENT']);
if (
preg_match('/firefox/'$user_agent)) {
    echo 
"Du nutzt Firefox!";
    } 
Bei einem Besuch der Internetseite mit Firefox würde nun der Text Du nutzt Firefox! angezeigt werden.

Etwas eleganter geht es noch über die Funktion get_browser() von Php. Diese erfordert aber eine 300kb schwere .ini.
Dafür kann man mit ihr, wenn der Browser es zulässt, auch weiter Informationen herausfinden, zum Beispiel die CSS-Version des Browsers:
PHP-Code:
$browser get_browser(nulltrue);
$css_version $browser[cssversion];
echo 
"Dein Browser hat die CSS version ".$css_version."!"
In meinem Fall würde dann Dein Browser hat die CSS version 2! angezeigt werden. Nun könnte ich auch abfragen, ob die CSS Version kleiner 3 ist und dann ein CSS 2 Design statt einem CSS 3 Design ausgeben lassen.

Was der Browser sonst noch verrät findet man am besten selbst heraus, in dem man folgenden Codeschnippsel testet:
PHP-Code:
$browser get_browser(nulltrue);
print_r($browser); 

Viel Spaß! Smile
[Bild: zaiendosig.php]
Antworten
#2
Danke für das Tutorial, ich habe bisher immer den User Agent genutzt und zurechtgeschnitten, get_browser macht das ganze einfacher und informativer Smile

Vielleicht sollte man noch erwähnen, dass die besagte ini, wenn nicht auf dem Server vorhanden, hier zu finden ist (3. Download von oben: "php_browscap.ini"). Man muss diese dann auch in den PHP Einstellungen lokalisieren.
I'm sorry, Dave. I'm afraid I can't do that.
Antworten


Verlinke dieses Thema:

Teile es auf:
Twitter Facebook Stumble Upon Delicious Google GMail LinkedIn



Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste