css browser detectie in php

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Yoram

Yoram

31/01/2009 17:16:00
Quote Anchor link
hallo phpers,

ik wil graag een browser detection voor me website hebben..
ik heb de javascript versie farianten geprobeert alleen of ze doen het niet OF in IE laat hij de hele code zien.

ik heb zo snel ergens gelezen dat het kan met $_server['HTTP_USER_AGENT']..

weet iemand zo snel iets?

alvast bedankt.
Gewijzigd op 01/01/1970 01:00:00 door Yoram
 
PHP hulp

PHP hulp

18/12/2024 14:48:32
 
Pieter Jansen

Pieter Jansen

31/01/2009 17:18:00
Quote Anchor link
Vertel eens wat je er mee wil bereiken, want die commands zijn ongelooflijk onbetrouwbaar.
 
Yoram

Yoram

31/01/2009 17:22:00
Quote Anchor link
Ik wil graag zeg maar als ik in IE zit de stylesheet:
<link rel='stylesheet' type='text/css' href='style.IE.css'>

en in firefox
<link rel='stylesheet' type='text/css' href='style.MOZ.css'>


PS. daarom vroeg ik ook of iemand iets wist omdat ze onbetrouwbaar zijn!m aar is er dan wel een oplossing in php of moet het dan gewoon echt in javascript?
Gewijzigd op 01/01/1970 01:00:00 door Yoram
 
Kumkwat Trender

Kumkwat Trender

31/01/2009 17:24:00
Quote Anchor link
zoek maar op google naar css hacks
dan vind je dit:
http://www.webdevout.net/css-hacks



<!--[if IE]> <link href="ie_only.css" rel="stylesheet" type="text/css"> <![endif]-->
<!--[if !IE]>--> <link href="not_ie.css" rel="stylesheet" type="text/css"> <!--<![endif]-->

en jouwn manier vind ik minder handig om eerlijk te zijn
Gewijzigd op 01/01/1970 01:00:00 door Kumkwat Trender
 
Joey Drieling

Joey Drieling

31/01/2009 17:25:00
Quote Anchor link
laat maar peter was me voor.
Gewijzigd op 01/01/1970 01:00:00 door Joey Drieling
 
Kumkwat Trender

Kumkwat Trender

31/01/2009 17:30:00
Quote Anchor link
Maar als je het graag wilt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php

// Browser Detection
if(eregi("(opera) ([0-9]{1,2}.[0-9]{1,3}){0,1}",$_SERVER['HTTP_USER_AGENT'],$regs) || eregi("(opera/)([0-9]{1,2}.[0-9]{1,3}){0,1}",$_SERVER['HTTP_USER_AGENT'],$regs)){
    $browser = "Opera $regs[2]";
}
elseif( eregi("(konqueror)/([0-9]{1,2}.[0-9]{1,3})",$_SERVER['HTTP_USER_AGENT'],$regs) ){
    $browser = "Konqueror $regs[2]";
}
elseif( eregi("(omniweb/)([0-9]{1,2}.[0-9]{1,3})",$_SERVER['HTTP_USER_AGENT'],$regs) ) {
    $browser = "OmniWeb $regs[2]";
}
elseif( eregi("(webtv/)([0-9]{1,2}.[0-9]{1,3})",$_SERVER['HTTP_USER_AGENT'],$regs) ) {
    $browser = "WebTV $regs[2]";
}
elseif( eregi("(lynx)/([0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2})",$_SERVER['HTTP_USER_AGENT'],$regs) ) {
    $browser = "Lynx $regs[2]";
}
elseif( eregi("(links) \(([0-9]{1,2}.[0-9]{1,3})",$_SERVER['HTTP_USER_AGENT'],$regs) ) {
    $browser = "Links $regs[2]";
}
elseif( eregi("(msie) ([0-9]{1,2}.[0-9]{1,3})",$_SERVER['HTTP_USER_AGENT'],$regs) ) {
    $browser = "MSIE $regs[2]";
}
elseif( eregi("(netscape6)/(6.[0-9]{1,3})",$_SERVER['HTTP_USER_AGENT'],$regs) ) {
    $browser = "Netscape $regs[2]";
}
elseif( eregi("mozilla/5",$_SERVER['HTTP_USER_AGENT']) ){
    $browser = "Netscape";
}
elseif( eregi("(mozilla)/([0-9]{1,2}.[0-9]{1,3})",$_SERVER['HTTP_USER_AGENT'],$regs) ) {
    $browser = "Netscape $regs[2]";
}
elseif( eregi("w3m",$_SERVER['HTTP_USER_AGENT']) ) {
    $browser = "w3m";
}
else {
    $browser = "Unknown";
}


if($browser=="Netscape") { echo 'you use netscape'; }
?>

enz.. moet je zelf maar inbouwen..
 
Yoram

Yoram

31/01/2009 17:33:00
Quote Anchor link
Dankje peter!
Daar was ik ondertussen ook mee aan het klote..

Maar kijk alleen hier eens:
http://www.yorsha.nl/NLD/index.php?page=Questbook

Nu heb ik dat wel gedaan.. alleen hij werkt niet in Firefox..

Let trouwens niet op ik ben nog alles aan het goed zetten in de CSS maar moet eerste voor IE een firefox script hebben.
 
Kumkwat Trender

Kumkwat Trender

31/01/2009 17:36:00
Quote Anchor link
google chrome werkt ie ook niet xD
ten minste, het ziet er verneuqt uit :P
Gewijzigd op 01/01/1970 01:00:00 door Kumkwat Trender
 
Yoram

Yoram

31/01/2009 17:40:00
Quote Anchor link
Haha ja daarom wil ik ook een detectie maken ;)
<!--[if IE]><style> </style><![endif]--> dan zeg je toch van als hij voor alle versies van Internet explorer is.
<!--[if !IE]><style> </style><![endif]--> Voor overige browsers?

Maar het werkt niet echt.
 
- SanThe -

- SanThe -

31/01/2009 17:43:00
Quote Anchor link
Valideren.

HTML: 121 Errors, 8 warning(s)
CSS: 2 Errors.
 
Yoram

Yoram

31/01/2009 17:48:00
Quote Anchor link
waar heb je dat gedaan SanThe?

dat zou wel eens geod zijn jaa *shame shame*
 
Niek Weevers

Niek Weevers

31/01/2009 17:50:00
Quote Anchor link
Ik gebruik de volgende conditional comment nog wel eens
<!--[if lte IE 7]><link rel="stylesheet" href="css/ie.css" type="text/css" /><![endif]-->

Dit laadt de css in voor ie7 en lager. Als je alleen lager dan ie7 wilt en wijzig je de lte in lt.
Dit werkt perfect
 
Yoram

Yoram

31/01/2009 17:54:00
Quote Anchor link
@Niek,

Jaa ik heb voor IE werkt voor alle versies van Internet Explorer, alleen nu moet ik nog voor naar Firefox.. ofja dat hij een apart css file laad voor als je in Firefox zit


ik doe het nu anders.. ik doe gewoon standaard css voor firefox laden en als de browser IE is laad ik het IE css er gewoon bij?

of is dit allemaal dubbel gebeuren?
Gewijzigd op 01/01/1970 01:00:00 door Yoram
 
- SanThe -

- SanThe -

31/01/2009 18:01:00
 
Kumkwat Trender

Kumkwat Trender

31/01/2009 18:04:00
Quote Anchor link
nu ziet het in google chrome beter uit ;)
 
Pieter Jansen

Pieter Jansen

31/01/2009 18:32:00
Quote Anchor link
je moet gewoon een algemene stylesheet laden voor ALLE browsers, en wanneer het er in IE verkeerd uitziet, wat ongetwijfeld gebeurt, laad je de stylesheet voor IE. Dus maak het werkend in FF en dergelijke, en daarna pas voor IE

en wanneer je stylesheets gaat laden, zorg ervoor dat je algemene stylesheet eerst geladen wordt en daarna pas die voor IE, zet er een reset in en bouw de pagina opnieuw op volgens je IE stylesheet.

Op die manier moet het gewoon werken, heb er zelf ook altijd last van gehad ;)
 
Niek Weevers

Niek Weevers

31/01/2009 18:41:00
Quote Anchor link
Klopt helemaal wat Merijn zegt. Eerst goed in FF bouwen en ook voor ie7. Daarna de dingen oplossen voor ie6 met de aparte stylesheet. IE6 kent bijv geen min-height. Daarvoor gebruik je de hack _height, maar in een aparte stylesheet voor ie6, kun je dan gewoon height gebruiken.
 
Yoram

Yoram

31/01/2009 18:42:00
Quote Anchor link
Jaa ik heb dat nu ook gedaan! het werkt perfect!! nog een paar kleine aanpassingen Alleen hoe met die hack_height enzo..

iemand een site daarvoor toevallig?!

Bedankt alvast!!!
 
Pieter Jansen

Pieter Jansen

31/01/2009 19:17:00
Quote Anchor link
Wat je kunt doen is dit oplossen in je algemene stylesheet.

min-height: 500px;
height: auto!important;
height: 500px;

Hierdoor wordt er een minimale hoogte gedefineerd voor zowel IE als FF en gevolg.

Door de auto !important pakt hij toch altijd de hoogte die hij moet hebben, met een minimum van 500px.

En door het gebroken box model schuift de box ook mee.
 
Emmanuel Delay

Emmanuel Delay

01/02/2009 07:00:00
Quote Anchor link
Je vindt trouwens ook wel goeie browser detectors online.

hier bv. http://chrisschuld.com/projects/browser-php-detecting-a-users-browser-from-php/
 



Overzicht Reageren

 
 

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.