Just nu i M3-nätverket
Jump to content

avgöra vilken browser användaren har..


Wippika

Recommended Posts

HEj

 

Någon som hittat något asp script för att bestämma vilken webläsare m.m utifrån useragent stringen som användaren har. Har sökt på google men hittar ingen bra??

 

Mvh

 

Link to comment
Share on other sites

Vilken webbläsare som används får du av:

Request.ServerVariables("HTTP_USER_AGENT")

 

I Javascript kan du använda:

 

document.write(navigator.userAgent)
document.write(navigator.appName)
document.write(navigator.appVersion)
document.write(navigator.platform)

 

Dessa tar fram lite information om användaren.

 

 

Link to comment
Share on other sites

Jag vill kunna få fram så mycket som möjligt om användaren m h a asp.. Alltså det finns ju script som analyserar user agent stringen och plockar fram operativsystem m.m... Dock har jag inte hittat någon bra..

 

Saken är ju att det blir säkrare med asp då någon inte skulle ha javascript påslaget (är väll inte så mänga kanske)..

 

denna sida ger ju ganska bra info om användaren..

http://www.useragentstring.com/

 

Mvh

 

Link to comment
Share on other sites

jo jag har provat den, men den är inget vidare. Säger att jag har netscape m.m när jag har IE ???:thumbsdown:

 

Link to comment
Share on other sites

Anjuna Moon

Man skulle ju kunna skriva en rutin själv. Vet inte om jag orkar göra det nu, men i princip måste följande steg ske:

 

1) Hämta agent-strängen ur Request.Servervariables("HTTP_USER_AGENT")

2) Avgör vilken browser det är genom att mönstermatcha agent-strängen mot de olika webbläsarnas mallar (jag listar de vanligast mallarna nedan)

3) När du vet vilken mall du skall använda får du än en gång använda mönstermatchning för att hämta de olika "wildcard"-fälten.

 

Några vanliga mallar:

 

Mozilla:

Mozilla/MozVer (Platform; Security; SubPlatform; Language; rv:Revision[; Extension]*) Gecko/GeckVer [Product/ProdVer]

 

IE:

Mozilla/MozVer (compatible; MSIE IEVer[; Provider]; Platform[; Extension]*)

 

Netscape:

Mozilla/Version[Gold] [[Language]][Provider] (Platform; Security[; SubPlatform][standAlone])

 

 

 

Link to comment
Share on other sites

Men hur ska man göra för att mönster matcha då??

 

"Anjuna": i januari svarade du på ett av mina inlägg för att försöka ta reda på hur länge besökare är på hemsidan.. Du hade då ett förslag på att använda ett Beacon..

//eforum.idg.se/viewmsg.asp?EntriesId=912870

 

OM du vill får gärna visa exempel och förklara lite mer hur det går till..

 

Mvh

 

Link to comment
Share on other sites

Anjuna Moon
Men hur ska man göra för att mönster matcha då??

Ska se vad jag kan sätta ihop här, återkommer lite senare.

 

Du hade då ett förslag på att använda ett Beacon..

OM du vill får gärna visa exempel och förklara lite mer hur det går till..

Har inte funderat vidare på det där sedan jag skrev inlägget, men min tanke var ungefär så här:

 

I databasen en tabell över besökare

 

Visitor

-------

SessionId

EntryTime

LastBeaconTime

 

(handlar det om inloggade besökare så lägger du även till en pekare till användardatan)

 

I Session_OnStart lägger du till användaren i Visitor, med sitt unika sessionsid, samt sätter både EntryTime och LastBeaconTime till aktuell tid.

 

I Javascriptet använder du sedan en timer (setInterval) som anropar en funktion som via Ajax skickar ett anrop tillsammans med sessionsid:t till en speciell sida på din server. Denna sida uppdaterar Visitor.LastBeaconTime med aktuell tid.

 

Beroende på vilket intervall du använder för anropen (ex. 2 minuter) kan du sen enkelt avgöra om en användare fortfarande finns på sajten (genom att kontrollera om LastBeaconTime är äldre än 2 minuter). Sedan får man ju förstås acceptera laggtider, så en kontroll på äldre än 3 minuter kan ju vara bra som kriterie.

 

Nu tar jag och tittar på ditt UserAgent problem

 

 

Link to comment
Share on other sites

Anjuna Moon

Usch, nä, jag fick ont i huvudet av att skriva om webbläsarnas agent-definitioner till fullständiga mönster. Man skulle ju kunna göra en quick-and-dirty-lösning där man inte nyttjar alla parametrar som hör till respektive definition. Du kan ju titta på följande länk, så ser du hur mycket varianter det finns av parametrar:

 

http://en.wikipedia.org/wiki/User_agent#Some_common_user_agent_strings_dissected

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...