Avatar billede dp2001 Juniormester
22. august 2003 - 18:26 Der er 6 kommentarer og
2 løsninger

Log browser-type

Findes der ikke noget mere "nøjagtigt" end

Request.ServerVariables("HTTP_USER_AGENT")

- til at logge browser-type?

Hvis jeg bruger den, får jeg "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" - hvor jeg havde forventet "Internet Explorer 6.0"
Avatar billede Slettet bruger
22. august 2003 - 18:28 #1
det får du da også af vide: MSIE 6.0 ? eller har jeg misforstået noget ?
Avatar billede dp2001 Juniormester
22. august 2003 - 18:29 #2
Tjo, men jeg havde nok forventet noget andet af hensyn til, hvis jeg senere ifb. med noget statistik skulle bruge det til at lave noget "GROUP BY" med og også være i stand til at præsentere en "pænere tekst".
Avatar billede marduk666 Nybegynder
22. august 2003 - 18:30 #3
Nej det gør der ikke du bliver nød til at lave en if sætning som checker om der er MSIE i og så skrive Internet Explorer 6.0 eller hvad du nu vil.
Avatar billede Slettet bruger
22. august 2003 - 18:37 #4
det skulle der jo heller ikke være de store problemer i at splitte den op, da strengen er seppereret med ";" så kan du jo nemt hive det ud....
Avatar billede dp2001 Juniormester
22. august 2003 - 18:39 #5
Ja det er nemt, hvis man ved hvad man skal lede efter (hér 'MSIE 6.0'), men det kunne jo ligeså godt være Opera, Netscape eller andre browsere - og i diverse versioner.
Avatar billede whatever Nybegynder
22. august 2003 - 19:19 #6
Du kan prøve noget lignende:

        strUserAgent = Request.ServerVariables("HTTP_USER_AGENT")
        Select Case true
            Case InStr(strUserAgent,"Opera/4.0") > 0, Instr(strUserAgent,"Opera 4.0") > 0
                strBrowserVer = "Opera 4.0"
            Case InStr(strUserAgent,"Opera/5.0") > 0, Instr(strUserAgent,"Opera 5.0") > 0
                strBrowserVer = "Opera 5.0"
            Case InStr(strUserAgent,"Opera/6.0") > 0, Instr(strUserAgent,"Opera 6.0") > 0
                strBrowserVer = "Opera 6.0"
            Case InStr(strUserAgent,"Opera/7.0") > 0, Instr(strUserAgent,"Opera 7.0") > 0
                strBrowserVer = "Opera 7.0"
            Case InStr(strUserAgent,"MSIE 4.0") > 0
                strBrowserVer = "Internet Explorer 4.0"
            Case InStr(strUserAgent,"MSIE 4.5") > 0
                strBrowserVer = "Internet Explorer 4.5"
            Case InStr(strUserAgent,"MSIE 5.0") > 0
                strBrowserVer = "Internet Explorer 5.0"
            Case InStr(strUserAgent,"MSIE 5.5") > 0
                strBrowserVer = "Internet Explorer 5.5"
            Case InStr(strUserAgent,"MSIE 6.0") > 0
                strBrowserVer = "Internet Explorer 6.0"
            Case InStr(strUserAgent,"Mozilla/4.0") > 0
                strBrowserVer = "Netscape 4.0"
            Case InStr(strUserAgent,"Mozilla/4.5") > 0
                strBrowserVer = "Netscape 4.5"
            Case InStr(strUserAgent,"Mozilla/4.6") > 0
                strBrowserVer = "Netscape 4.6"
            Case InStr(strUserAgent,"Mozilla/4.7") > 0
                strBrowserVer = "Netscape 4.7"
            Case InStr(strUserAgent,"Mozilla/5.0") > 0
                strBrowserVer = "Netscape 6.0"
            Case Else
                strBrowserVer = "Ukendt browser"
        End Select

Du skal være opmærksom på, at selv om scriptet kommer frem til at browseren f.eks. er en Netscape 6.0, kan det også være en Mozilla m.fl.
Avatar billede tchami Nybegynder
25. august 2003 - 09:27 #7
Du kan evt- tage et kig på det indbyggede Browser Capabilities component. Bare kør følgende stykke kode:

<%
Set objBrowser = Server.CreateObject("MSWC.BrowserType")
%>
<table border="1">
<tr>
    <td>Browser</td>
    <td><%=objBrowser.browser%></td>
</tr>
<tr>
    <td>Version</td>
    <td><%=objBrowser.version%></td>
</tr>
<tr>
    <td>Understøtter frames</td>
    <td>
    <%
    If (objBrowser.frames = true) then
        Response.Write "true"
    Else
        Response.Write "false"
    End If
    %>
    </td>
</tr>
<tr>
    <td>Understøtter tabeller</td>
    <td>
    <%
    If (objBrowser.tables = true) then
        Response.Write "true"
    Else
        Response.Write "false"
    End If
    %>
    </td>
</tr>
<tr>
    <td>Understøtter backgroundsounds</td>
    <td>
    <%
    If (objBrowser.backgroundsounds = true) then
        Response.Write "true"
    Else
        Response.Write "false"
    End If
    %>
    </td>
</tr>
<tr>
    <td>Understøtter VBScript</td>
    <td>
    <%
    If (objBrowser.vbscript = true) then
        Response.Write "true"
    Else
        Response.Write "false"
    End If
    %>
    </td>
</tr>
<tr>
    <td>Understøtter JScript</td>
    <td>
    <%
    If (objBrowser.javascript = true) then
        Response.Write "true"
    Else
        Response.Write "false"
    End If
    %>
    </td>
</tr>
</table>
Avatar billede dp2001 Juniormester
25. august 2003 - 17:00 #8
Nope - det viser Netscape 4.0, selvom jeg kører MSIE60.

Lukker spg.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester