Vraag & Antwoord

Webprogrammeren & scripting

User Agents

15 antwoorden
  • Weet iemand welke verschillende user agents er allemaal zijn. En welke op dit moment gangbaar zijn. Ik zoek dit om in het klein bij te houden welke browsers er zoal langskomen...
  • Kun je beter niet aan beginnen, zijn er veel te veel. [url=http://www.psychedelix.com/agents.html]Hier[/url] is een lijst. wimb
  • In plaats van alle verschillende UA's bij te houden kan je misschien beter kijken naar herhalende patronen in UA's. Zo zien alle Gecko-browsers (alle gebaseerd op Mozilla) er ongeveer hetzelfde uit. Met regular expressions kan je dan in één keer zien van welke familie het komt en kan je evt later opsplitsen op bijvoorbeeld versie. Wat ook zou kunnen is gewoon beginnen met een standaardset (IE, Mozilla, Opera, Safari) en uitbreiden als dit nodig blijkt. Dit vereist wel dat je alle UA's opslaat... Ga je de lijst zelf bijhouden of kijk je in je Apache access log? - Bas
  • 1. Het zijn er idd heel erg veel. Daarom wil ik me beperken tot de gangbare browsers. Browsers waar minder dan 1 of 2 % van de bezoekers gebruik van maakt valt dan onder overig. 2. Ik was van plan dit met php en de http_user_agent te doen. (Als mn host een browsecap.ini gaat gebruiken, dan ga ik mss voor de get_browser() functie. 3. Wat zijn regular expressions??? (ik zoek al op google) 4. Dat van die standaard-set lijkt me een goed idee. Maar dan wil ik wel zoiets gaan maken dat je ook de verschillende versie kunt zien. (ook hier alleen de gangbare versies. Een of andere exotische versie hoeft natuurlijk niet). Dus als ik voor de populaire browsers een soort statistieken systeempje wil maken, moet ik daar toch wel de 'identificatie' strings hebben (als je dat zo mag noemen).
  • (Mijn Mozilla heeft elke dag een andere versie (daily uploads), daarnaast zijn er ook nog tooltjes voor FF, zo heb ik gelezen, waarmee je kan aangeven dat je browser bijvoorbeeld "ButterFly" heet. Lijkt me onbegonnen werk. Waarom wil je het eigenlijk?)
  • [quote:2a90ff60fb="stierenoog"]1. Het zijn er idd heel erg veel. Daarom wil ik me beperken tot de gangbare browsers. Browsers waar minder dan 1 of 2 % van de bezoekers gebruik van maakt valt dan onder overig.[/quote:2a90ff60fb]Lijkt me niet onverstandig.[quote:2a90ff60fb="stierenoog"]2. Ik was van plan dit met php en de http_user_agent te doen.[/quote:2a90ff60fb]Kan, maar denk er dan wel aan dat bijvoorbeeld Opera zich standaard identificeerd als IE.[quote:2a90ff60fb="stierenoog"]3. Wat zijn regular expressions??? (ik zoek al op google)[/quote:2a90ff60fb]Met regular expressions (regexps) kan je controleren op patronen. Van Mozilla is de UA-string van de stabiele versie altijd hetzelfde muv het versienummer. Met een regexp kan je dus controleren óf het Mozilla is en welke versie het betreft.[quote:2a90ff60fb="stierenoog"]4. Dat van die standaard-set lijkt me een goed idee. Maar dan wil ik wel zoiets gaan maken dat je ook de verschillende versie kunt zien. [/quote:2a90ff60fb]Zie voorgaand antwoord.[quote:2a90ff60fb="stierenoog"] Dus als ik voor de populaire browsers een soort statistieken systeempje wil maken, moet ik daar toch wel de 'identificatie' strings hebben[/quote:2a90ff60fb]Ik zou deze allemaal in een database oid opslaan en vervolgens de statistieken hieruit berekenen. Waarom? Stel dat je later nieuwe UA-strings toevoegt, dan kan je al je statistieken updaten! En ik zou zeker even aan je host vragen of ze leesrechten voor de Apache access log bieden, dan scheelt het je namelijk een hoop werk en moeite. Nog even iets... Het is waarschijnlijk niet onverstandig om ook te werken met client side scripting. Op deze manier kan je gegevens opvragen die niet aan de serverkant beschikbaar zijn én je kan gegevens die de server krijgt verifiëren. Zo kan je opera herkennen doordat het als enige (en altijd) [i:2a90ff60fb]window.opera[/i:2a90ff60fb] ondersteunt, dus dan heb je zekerheid. - Bas
  • Ja voorlopig gaat het niet om de versie nummers maar alleen om het type browser. Het is eigenlijk alleen bedoeld om wat beter met php te worden...
  • [quote:657f773516="BasHamar"]Kan, maar denk er dan wel aan dat bijvoorbeeld Opera zich standaard identificeerd als IE.[/quote:657f773516] Niet geheel. Standaard is de user-agent 'Mozilla/4.0 (compatible; MSIE, 6.0; Windows 98) Opera 7.0 [en]' Opera staat er dus wel in ;) zie http://my.opera.com/community/dev/idopera/
  • Opera identificeert zich soms ook zo: Opera/7.23 (Windows NT 5.1; U) [en] Dat kun je allemaal zo instellen....
  • Dat laatste is als opera zich identificeert als opera; andere UI's eindigen met 'opera 7.0 [en]'
  • Nog even wat: Welke browser families heb je zoals: Wat ik gevonden heb is dit: - Gecko - KHTML - MSIE - Netscape - Opera Maar ik d8 dat IE en opera ook gecko gebaseerd waren....
  • Gecko is geen browser, maar een engine. Alleen browsers uit de Mozilla-familie gebruiken het. Ik zou de volgende families nemen: - IE (vreemde familie, vergelijkbaar met schoonfamilie) - Mozilla, Firefox, Camino, Netscape (doet alles zoals je dat verwacht, eigen familie) - Opera - Safari - Konqueror - Lynx (voor als je hier een sitecheck plaatst) Dit moet wel ongeveer afdoende zijn... - Bas
  • Check www.quirksmode.org als je aan de js browsersniffing waagt. Staat een hele goede op. Waarom wil je eigenlijk weten met welk stukje softwaar er wordt gesurft? Deze info staat op één regel in de headers, en kan makkelijk aangepast worden.
  • [quote:47f1981ee7="[m]"]Deze info staat op één regel in de headers, en kan makkelijk aangepast worden.[/quote:47f1981ee7]Ook al kan het wel, 99,99% van de surfers doet het niet. Daarmee zijn dergelijke statistieken een mooie indicatie van je doelgroep. - Bas
  • ik denk nu een manier gevonden te hebben zodat je opera er altijd uitpikt... [code:1:7bdc1e6ef1]if (eregi('opera/([0-9]+\.[0-9]+)', $detect, $regs)) { $browser = 'Opera ' . $regs[1]; } elseif (eregi('opera ([0-9]+\.[0-9]+)', $detect, $regs)) { $browser = 'Opera ' . $regs[1]; }[/code:1:7bdc1e6ef1] Opera kan zich namelijk als opera identificeren: opera/7.23 (windows nt 5.1; u) [en] of als een andere browser. Daar staat dan altijd opera 7.23 [en] achter.... Op deze manier controleert het eerst of opera een normale user agent string geeft, of dat het anders gedaan wordt.... Owjah...Regular expressions zijn erg handig...alleen weet ik niet al die opties...nu ken ik alleen [0-9]... (ik had ook ergens gelezen dat \d hetzelfde is, maar dat werte niet.)

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.