/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
browser detection kode
Fra : scootergrisen


Dato : 01-03-11 20:02

Er der en der har noget god kode til at detecte hvilken browseren
brugeren bruger og skriver det på en flot måde som :

Mozilla Firefox 4.0b11

I stedet for :

Mozilla/5.0 (Windows NT 6.0; rv:2.0b11) Gecko/20100101 Firefox/4.0b11

Jeg har noget kode nu som jeg har fundet men det er ikke super optimalt
og jeg får nogen fejlbeskeder.

Jeg kan desværre ikke bruge get_browser() på mit webhotel som jo ellers
ligner det jeg søger.
Men er der måske en anden måde at bruge get_browser() hvis man ikke har
adgang til serveres konfigurations filer ?
Det fordi jeg skal ind og sætte browscap browscap.ini men det kan jeg
ikke på webhotellet.

 
 
Karl Erik Christense~ (01-03-2011)
Kommentar
Fra : Karl Erik Christense~


Dato : 01-03-11 21:39

On 01-03-2011 20:01, scootergrisen wrote:
> Er der en der har noget god kode til at detecte hvilken browseren
> brugeren bruger og skriver det på en flot måde som :
>
> Mozilla Firefox 4.0b11
>
> I stedet for :
>
> Mozilla/5.0 (Windows NT 6.0; rv:2.0b11) Gecko/20100101 Firefox/4.0b11
>
> Jeg har noget kode nu som jeg har fundet men det er ikke super optimalt
> og jeg får nogen fejlbeskeder.
>
> Jeg kan desværre ikke bruge get_browser() på mit webhotel som jo ellers
> ligner det jeg søger.
> Men er der måske en anden måde at bruge get_browser() hvis man ikke har
> adgang til serveres konfigurations filer ?
> Det fordi jeg skal ind og sætte browscap browscap.ini men det kan jeg
> ikke på webhotellet.

Google søgning: php browser detection

Your Computer
Operating System:

Linux
Distro: Ubuntu
Current Browser / UA:

Mozilla/ Firefox 3.6.13
ProductSub: 20101206
Engine: Gecko RV: 1.9.2.13
XHTML support: Yes
System Language

Primary Language id: da
Primary Language:
Danish
Current Screen Resolution

1280 x 1024 pixels
JavaScript

JavaScript is enabled.
Cookies

Cookies are enabled
PHP Browser Detection

Run Time: 0.00039983 Seconds

http://techpatterns.com/downloads/php_browser_detection.php

Karl Erik.

--
http://dmwebdesign.dk - DM i Webdesign
http://www.tyveri-check.dk - Snyd tyven før han snyder dig!
http://webdesign.ranunkelvej.com - Artikler om webdesign


scootergrisen (02-03-2011)
Kommentar
Fra : scootergrisen


Dato : 02-03-11 04:24

> http://techpatterns.com/downloads/php_browser_detection.php

Tak det virker bare ik specielt godt.
Der er forskellige variabler hvis man vil have browsernavnet.
Man kan ikke bare sige echo $browsernavn.
Også vises safaris version forkert og internet explorer angives bare som
MSIE.
Så det er nok for meget at rette på.
Ville bare bedre hvis det var bedre fra starten.
Navigator angives også som Firefox.

Martin Larsen (02-03-2011)
Kommentar
Fra : Martin Larsen


Dato : 02-03-11 11:33

scootergrisen wrote:
> Er der en der har noget god kode til at detecte hvilken browseren
> brugeren bruger og skriver det på en flot måde som :

Du kan kigge her: http://api.jquery.com/jQuery.browser/

Men hvad skal du bruge det til?

Som der står i nævnte link er det bedre at bruge /feature detection/

scootergrisen (02-03-2011)
Kommentar
Fra : scootergrisen


Dato : 02-03-11 16:08

Den 02-03-2011 11:33, Martin Larsen skrev:
> scootergrisen wrote:
>> Er der en der har noget god kode til at detecte hvilken browseren
>> brugeren bruger og skriver det på en flot måde som :
>
> Du kan kigge her: http://api.jquery.com/jQuery.browser/
>
> Men hvad skal du bruge det til?
>
> Som der står i nævnte link er det bedre at bruge /feature detection/

Jeg skal bruge det til at vise browser navnet og versionen på min
hjemmeside så brugeren kan se hvilken browser brugeren har (eller hvad
den er sat til at give sig til kende som) som versionen.

De koder jeg har prøvet virker ok mange gange men så står der for
eksempel firefox selvom det ikke er firefox hvis det er en browser med
gecko eller sådan noget tror jeg.

Det skulle gerne være rigtigt hver gang.

Og hvis jeg kunne undgå det så ville jeg gerne undgå at bruge
javascript. Vil hellere gøre det serverside.

Martin Larsen (02-03-2011)
Kommentar
Fra : Martin Larsen


Dato : 02-03-11 22:29

scootergrisen wrote:

> Og hvis jeg kunne undgå det så ville jeg gerne undgå at bruge
> javascript. Vil hellere gøre det serverside.

Kig evt. her:

http://whatsmyuseragent.com/
http://www.useragentstring.com/

Måske du finder inspiration ...

Vagn Kofoed (05-07-2011)
Kommentar
Fra : Vagn Kofoed


Dato : 05-07-11 07:40

Den 01-03-2011 20:01, scootergrisen skrev:
> Er der en der har noget god kode til at detecte hvilken browseren
> brugeren bruger og skriver det på en flot måde som :
>
> Mozilla Firefox 4.0b11
>
> I stedet for :
>
> Mozilla/5.0 (Windows NT 6.0; rv:2.0b11) Gecko/20100101 Firefox/4.0b11
>
> Jeg har noget kode nu som jeg har fundet men det er ikke super
> optimalt og jeg får nogen fejlbeskeder.
>
> Jeg kan desværre ikke bruge get_browser() på mit webhotel som jo
> ellers ligner det jeg søger.
> Men er der måske en anden måde at bruge get_browser() hvis man ikke
> har adgang til serveres konfigurations filer ?
> Det fordi jeg skal ind og sætte browscap browscap.ini men det kan jeg
> ikke på webhotellet.
$brows_arr = array("Opera", "Presto", "Avant", "MSIE", "Chrome",
"Safari", "Firefox");
$browser = " " . $_SERVER['HTTP_USER_AGENT'];
#echo ">$browser<<br> \n";
$not_comp = false;

foreach ($brows_arr as $val){
$pos = strpos($browser, $val);
if($pos){
$_SESSION['browser'] = $val;
break;
}
}

Jeg bruger ovenstående. Den er vist ikke helt fin i kanten, men virker
til mit formål.


Bertel Lund Hansen (05-07-2011)
Kommentar
Fra : Bertel Lund Hansen


Dato : 05-07-11 08:37

Vagn Kofoed skrev:

> #echo ">$browser<<br> \n";

Man skal altid kode < og >. Og #echo er udefineret i PHP.
Kommentarer laves med // (en linje) eller /* */ (blok).

// echo "&gt;$browser&lt;<br> \n";

> foreach ($brows_arr as $val){
> $pos = strpos($browser, $val);
> if($pos){
> $_SESSION['browser'] = $val;
> break;
> }
> }

Jeg ville lave en tilføjelse for at gardere mod ukendte browsere:

   $brows_arr = array("Opera", "Presto", "Avant", "MSIE", "Chrome", "Safari", "Firefox");
   $_SESSION['browser'] = $_SERVER['HTTP_USER_AGENT'];
   foreach ($brows_arr as $val) {
      $pos = strpos($browser, $val);
      if ($pos) {
         $_SESSION['browser'] = $val;
         break;
      }
   }

> Den er vist ikke helt fin i kanten, men virker til mit formål.

Jeg ser ikke nogen problemer med din rutine.

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

Søg
Reklame
Statistik
Spørgsmål : 177416
Tips : 31962
Nyheder : 719565
Indlæg : 6407858
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste