Ett stort svenskt företag har ett dåligt skrivet ASP-skript som buggar ur om ens webbläsare har någon bokstav i versionsnumret. Jag har upplyst dem om det och förklarat vad som är fel, men det har nu gått tre veckor utan att de har lyckats fixa det. Därför börjar jag fundera på om det kanske kan vara så att de använder något färdigt skript eller nån komponent för det ändamålet, och inte klarar av att fixa buggen av den anledningen. Och därför frågar jag er, finns det någon inbyggd funktion som följer med ASP som man kan använda till att kolla vad användaren har för webbläsare? Jo man kan få reda på vilken webbläsare du har. Fast jag tror inte det anropas från servern, utan din webbläsare skickar det samtidigt vid anropet på webbisdan. <b>Thomas Tydal skrev:</b> > Och man kan använda sig av Server.CreateObject Beror inte det på vilken version av BROWSCAP.INI man kör? Jag tror det! > Beror inte det på vilken version av BROWSCAP.INI man kör? JagFunktion för webbläsaravkänning
En annan intressant sak är att jag samtidigt påpekade att det på sidan man kommer till om ens webbläsare är "för gammal" står att man måste ha IE 4.0 eller högre, medan skriptet bara släpper en vidare om man har ett versionsnummer som är högre än 4. Version 4.0 godkänns alltså inte. Jag noterade nu att man har fixat det problemet. Gissa hur? Jo, genom att ändra texten på sidan till att krävs version 4.01 eller högre. Begåvat.
Men hallå?! Kraven på webbläsare gäller ju liksom bara för ASP-skriptet. Själva hemsidan går ju sedan utmärkt att titta på både i Opera och Lynx exempelvis, men man måste lura skriptet först innan man får tillåtelse.Sv: Funktion för webbläsaravkänning
Sv: Funktion för webbläsaravkänning
<b>Och därför frågar jag er, finns det någon inbyggd funktion som följer med ASP som man kan använda till att kolla vad användaren har för webbläsare?</b>
Japp, det finns det. 2 sätt känner jag till.
Man kan använda sig av Request.ServerVariables "HTTP_USER_AGENT").
Och man kan använda sig av Server.CreateObject("mswc.browsertype") .
Q272413, HOWTO: Determine Browser Type in Server-Side Script Without the BrowserType Object
<URL:http://support.microsoft.com/support/kb/articles/Q272/4/13.ASP>
Q167820, HOWTO: Determine Browser Version from a Script
<URL:http://support.microsoft.com/support/kb/articles/Q167/8/20.ASP>Sv: Funktion för webbläsaravkänning
> ("mswc.browsertype").
Den tolkar "Mozilla/4.0 (Compatible; MSIE 6.0b)" som Netscape 4, så det är nog inte den de kör. De har väl nåt hemmagjort ändå då kanske, men det är ju skumt att de inte klarar av att rätta till felen i skriptet.Sv: Funktion för webbläsaravkänning
Sv: Funktion för webbläsaravkänning
> tror det!
Hmm... vad kan det vara för fil? *kollar*... Aha... Men det kan nog inte vara det som är fallet heller, för den har flera versionsnummer med bokstäver i, så det borde ju inte innebära problem. Det måste nog vara hemmagjord kod ändå hos det stora svenska företaget.
Felet är för övrigt att de försöker köra en CDbl på versionsnumret utan att kolla så att det bara innehåller siffror först.