Browser en OS herkenning

Door PHP Newbie, 16 jaar geleden, 3.750x bekeken

Titel zegt genoeg denk ik.

Nadat ik dit voor mezelf geschreven heb en het hier had laten testen werd er gevraagd of ik dit wilde posten, dus bij deze.

Edit:

29-10-2006

Update browser toegevoegd en enkele patronen verbeterd


Edit:

4-11-2006

Windows Mobile en Palm worden nu ook herkend. Ook is de browser blazer van de Palm toegevoegd.

Voorbeeld: http://phphulp.chessweb.eu/?browser

Gesponsorde koppelingen

PHP script bestanden

  1. browser-en-os-herkenning

 

Er zijn 43 reacties op 'Browser en os herkenning'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Erik Rijk
Erik Rijk
16 jaar geleden
 
0 +1 -0 -1
Bedankt voor het delen :)


16 jaar geleden
 
0 +1 -0 -1
amai mooi script
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
---
Er zaten 2 kleine regex foutjes in, deze zijn nu verbeterd, het ging om de browsers Lynx en FireFox
---
Bo az
Bo az
16 jaar geleden
 
0 +1 -0 -1
Net werk, valt weinig op aan te merken volgens mij, heb toch nog 2 puntjes:
* In een functie wordt het een stuk beter bruikbaar denk ik, maar dat kan iedereen ook voor zich aanpassen zo.
* Soms wat overbodig commentaar denk aan:
Quote:
foreach($browser as $navigator) //dan gaan we even de hele array doorlopen

Dat lijkt me wel duidelijk.

Verder wel netjes uitgelegd dmv het commentaar.
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Boaz:

puntje 1:
kan, maar zoals je zelf al zegt kan ieder dat voor zich weten, dat is 1 regel + 2 accolades...

Edit:

je kunt ook dit bestand op iedere pagina includen bijvoorbeeld.


puntje 2:
dan snappen ook de absolute beginners het, en het vreet geen brood ;-)
K i p
K i p
16 jaar geleden
 
0 +1 -0 -1
Zou je een array kunnen returnen als het een functie is? Dus bijvoorbeeld
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
    echo 'Browser: '.$gegevens['browser'].'<br />
          Browser versie: '
.$gegevens['browserversie'].'<br />
          OS: '
.$gegevens['os'].'<br />
          <br />'
; //even alles echoën
          ?>

veranderen in
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?
          $return
= array(
          'Browser' => $gegevens['browser']
          'Browser versie' => $gegevens['browserversie']
          'OS' => $gegevens['os']
          );

          return $return; //even alles returnen
          
          ?>
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
return $gegevens;
?>
K i p
K i p
16 jaar geleden
 
0 +1 -0 -1
sorry -_-
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
maakt niet uit hoor, heb je weer iets geleerd ;-)
K i p
K i p
16 jaar geleden
 
0 +1 -0 -1
nee hoor, heb ik weer iets over het hoofd gezien (^_*)
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
dat kan ook.

Maar nu weer over het script ;-)
Klaasjan Boven
Klaasjan Boven
16 jaar geleden
 
0 +1 -0 -1
Het ziet er prachtig uit
The Hosh
The Hosh
16 jaar geleden
 
0 +1 -0 -1
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
                array('Windows XP Media Center Edition', '(Media[ ]Center)[ ](PC[ ]3.0)'),
?>


misgien dit ff toevoege ;)
- -
- -
16 jaar geleden
 
0 +1 -0 -1
Leuk! idd ff mediacenter toevoege
Luke Banning
Luke Banning
16 jaar geleden
 
0 +1 -0 -1
Media Center is XP, en gebruikt volgens mij ook dezelfde namen ervoor ;)
Niet 100% zeker maar dacht van wel :)
The Hosh
The Hosh
16 jaar geleden
 
0 +1 -0 -1
nope keb van vrienden deze resultaten gekregen
XP Home Edition
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)

XP Professional
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
(dit kan aan IE liggen maar weet niet zkr :P)
XP MCE
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Mailinfo [644331]; Media Center PC 3.0; .NET CLR 1.0.3705; .NET CLR 2.0.50727; InfoPath.1)


let niet op de IE Versie

check ook:
http://en.wikipedia.org/wiki/User_agent

of begrijp ik verkeerd van wat je zegt?
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
toegevoegd, wil iemand even kijken of het werkt?
Ponzi
Ponzi
16 jaar geleden
 
0 +1 -0 -1
Ik heb ook nog een vraagje :-) ?

Stel dat er nu een bezoeker met een PDA (windows mobile 5 bijvoorbeeld) langskomt? Het kan zijn dat ik erover kijk, maar hij staat niet echt tussen de lijst. Ik zal straks eens kijken welk resultaat dat geeft ;-).

Edit: ik zit nu op PDA en hij geeft inderdaad alles correct weer op uitzondering van de OS ;-) !

Ponzi
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
welke HTTP_USER_AGENT-string krijg je?
K i p
K i p
16 jaar geleden
 
0 +1 -0 -1
Als ik er met iCab 3.0.2 beta heen ga krijg ik
Browser: Mozilla
Browser versie: 5.0
OS: Mac OS X

en met Safari 1.3.2 krijg ik
Browser: Safari
Browser versie: 312
OS: Mac OS X

en met netscape 7.2 :
Browser: Mozilla
Browser versie: 5.0
OS: Mac OS X

en met opera 9.01 werkt het wel:
Browser: Opera
Browser versie: 9.01
OS: Mac OS X
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
ga ik vanavond wat aan doen, moet nu weg, bedankt!
Bavo
Bavo
16 jaar geleden
 
0 +1 -0 -1
Dit script blokkeert al de image en flash bestanden op men site, is dat de bedoeling? in IE6, 7, FF, Opera, Crazy Browser, Netscape,...

klik
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
dat kan toch niet door het script komen.

Als ik een willkeurig plaatje pak(http://www.bafke.be/test/Pretparken/images/Welcome_header.png)

en ik vul dat in in de header, dan bestaat het hele plaatje niet. Ligt dus volgens mij niet aan mijn script....

Edit:

ik heb het al gevonden

<embed src="Pretparken/images/Muziek_button.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="170" height="40"></embed>

moet je aanpassen naar

<embed src="../Pretparken/images/Muziek_button.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="170" height="40"></embed>
Bavo
Bavo
16 jaar geleden
 
0 +1 -0 -1
bedankt :)
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Update!

De browsers van Boris werken nu ook.
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Lijkt het jullie een goed idee om de 2 arrays's op mijn server te zetten, en dat je deze kunt gebruiken d.m.v.:

eval(file_get_contents('mijnsite/array1.php'));

???
Ponzi
Ponzi
16 jaar geleden
 
0 +1 -0 -1
Bwa, niet echt nodig denk ik. Als we éénmaal al de verschillende besturingssystemen / browsers hebben, dan is het alleen maar extra load voor je server :-) .
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Das waar.
K i p
K i p
16 jaar geleden
 
0 +1 -0 -1
Waarom eval(); eromheen?
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
zodat het wordt gezien als PHP
Legolas
Legolas
16 jaar geleden
 
0 +1 -0 -1
en daarna zeker lekker injecten?

lever maar fijn aan als csv en alleen als extra optie
Marien xD
Marien xD
16 jaar geleden
 
0 +1 -0 -1
Mijn pda word ook niet herkend :) Ik zal de userstring even geven:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
Browser: Internet Explorer
Browser versie: 4.01
OS: Onbekend

Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)


Ik draai dus windows mobile 5 op de resolutie van 240x320 (liggend), als ik staand browse zijn de getallen omgedraaid ;)
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Windows CE = Windows Mobile 5?
Ponzi
Ponzi
16 jaar geleden
 
0 +1 -0 -1
Volgens mij wel ja :-) . Ofwel Windows Mobile 2003, maar ben er niet volledig zeker van.

@ Marien: Ik raad je ten zeerste aan de Opera browser te downloaden voor PDA ;-) ! Vele malen sneller en gebruiksvriendelijker dan de standaard Internet Explorer.
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Marien, zou je nog is willen checken?
Ponzi
Ponzi
16 jaar geleden
 
0 +1 -0 -1
Klopt als een bus PHP Newbie ;-) , juist eventjes voor je gekeken.
Jelmer -
Jelmer -
16 jaar geleden
 
0 +1 -0 -1
Ik krijg ook
Browser: Internet Explorer
Browser versie: 4.01
OS: Windows Mobile 5

In mijn geval klopt het wel redelijk. Versie van IE weet ik zo niet, mijn OS is 2003 SE.
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Wat klopt er dan niet?
Ponzi
Ponzi
16 jaar geleden
 
0 +1 -0 -1
Volgens mij heeft Jelmer Windows Mobile 2003, en toch wordt er versie 5 aangegeven. Waarschijnlijk staat die CE op 'Mobile edition' zonder het juiste versie nummer weer te geven ofzo?
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
Update

Windows Mobile en Palm worden nu ook herkend. Ook is de browser blazer van de Palm toegevoegd.
Ponzi
Ponzi
16 jaar geleden
 
0 +1 -0 -1
Ik heb het zojuist met veel plezier ingebouwd in mijn site :-) ! Altijd leuk om te weten welke browser/os mijn bezoekers gebruiken :-p .

Bedankt
PHP Newbie
PHP Newbie
16 jaar geleden
 
0 +1 -0 -1
mooi :-)
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Joeri
Joeri
16 jaar geleden
 
0 +1 -0 -1
Zeer mooi script, nu moet ik het zelf niet meer schrijven, Thx.
Ook zeer volledig btw met hulp van alle phphulp'ers. :)

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. browser-en-os-herkenning

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.