Tanken med det här scriptet är att webläsare som inte innehåller strängen mozilla i sin http_user_agent skall skickas vidare till en särskild sida och alla andra normala webläsare hoppa vidare till html-stycket längre ned.
Tyvärr blir resultatet att alla webläsare skickas vidare istället för att följa else-satsen ned till html-koden. Någon som kan förstå varför detta inte fungerar eller har förslag på hur det borde se ut?
<%
dim webhuvud
webhuvud = Lcase (Request.ServerVariables("http_user_agent"))
If not InStr(webhuvud,"mozilla") then
Response.Redirect "http://exempelvisminhemsida.se/ejmozilla.asp"
else
%>
Har du kikat hur http_user_agent faktiskt ser ut för respektive läsare? Skulle tro att just Mozilla förekommer i nästan alla dessa.
Du borde leta efter något annat, t.ex. MSIE är något som bara förekommer för IE-användare.
dim webhuvud
webhuvud = Lcase (Request.ServerVariables("http_user_agent"))
If InStr(webhuvud,"msie") = 0 then
' Du har INTE IE
else
' Du har IE
end if
edit:
I Firefox:
HTTP_USER_AGENT = Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0
I IE:
HTTP_USER_AGENT = Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
Tack för ditt svar, MEN poängen med mitt script är att just använda mig av mozilla-strängen eftersom den används av alla normala webläsare (ie, netscape, firefox, etc). De få övriga vill jag däremot skicka vidare till en särskild sida.
Mitt problem är att det script som följer nedan i detta inlägg fungerar utmärkt, men inte mitt script i huvudinlägget. Den enda skillnaden är att jag kastat om ordningen och försöker använda en IF NOT-sats.
Mycket märkligt att koden nedan fungerar utmärkt med inte koden ovan i huvudinlägget! Mycket märkligt...
<%
dim webhuvud
webhuvud = Lcase (Request.ServerVariables("http_user_agent"))
If InStr(webhuvud,"mozilla") then
%>
Ah, tusen tack till er båda! Ibland behöver man någon som ger de rätta svaren och ytterligare en person som vägleder... Nu fungerar det utmärkt. STORT tack ännu en gång.