webForumDet fria alternativet

operativsystem?

8 svar · 208 visningar · startad av nachip

nachipMedlem sedan aug. 200150 inlägg
#1

Yo!

Jag vill ta reda på vilket os besökaren använder och skicka in detta i en databas... t ex, om besökaren använder Windows 2000 ska win2k i databasen öka med ett.

jag vet att man använder servervariables, men hur rensar jag ut operativsystemet ur följande resultat?

Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)

.nachip

[Redigerat av nachip den 03 sep 2001]

LarsGMedlem sedan dec. 200012 464 inlägg
#2
str = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"
l = len(str)
p = instrrev(str,";")+1
osstr = mid(str,p,l-p)

Nu vet inte jag hur strängen ser ut i andra fall.

------------------
essentitia preter non sans multiplicandum

spangoMedlem sedan juni 20008 205 inlägg
#3

Det där lär inte funka i Mozilla, Opera et.c..

------------------
God, root, what is difference? /Pitr

spangoMedlem sedan juni 20008 205 inlägg
#4

Det var så kul att posta att jag gjorde det två gånger...

[Redigerat av spango den 03 sep 2001]

LarsGMedlem sedan dec. 200012 464 inlägg
#5

Hur är strängen uppbyggd? Kan det se ut hur som helst för olika läsare?

red: Sökte lite och det verkar som om allt möjligt kan förekomma, så det är ganska svårt att få till något heltäckande.
------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 03 sep 2001]

spangoMedlem sedan juni 20008 205 inlägg
#6

Jupp, det tycks vara fullkomligt ostandardiserat :(

------------------
God, root, what is difference? /Pitr

nachipMedlem sedan aug. 200150 inlägg
#7

hmm... finns det inget annat sätt än att använda servervariables? typ, javascript? men hur skulle jag isf få in det i databasen?

.nachip

LarsGMedlem sedan dec. 200012 464 inlägg
#8

En variant är att du kollar på ett bestämt antal olika OS

str = request.servervariables("HTTP_USER_AGENT")
if instr(str,"Windows NT") > 0 then
os = "NT"
elseif instr(str,"George 3") > 0 then
os = "G3"
elseif instr(str,"Windows 2000") > 0 then
os = "W2K"
elseif instr(str,"Windows 98") > 0 then
os = "W98"
else
os = "Other"
end if
'update database

(Det finns ett OS som heter George 3)

------------------
essentitia preter non sans multiplicandum

nachipMedlem sedan aug. 200150 inlägg
#9

funkar fin, fint! man tackar! :)

258 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
135 ms — hämta forumlista (db)
121 ms — hämta statistik (db)
132 ms — hämta tråd, inlägg och bilagor (db)