webForumDet fria alternativet

If not-sats för http_user_agent fungerar inte

5 svar · 215 visningar · startad av robert999

robert999Medlem sedan maj 200328 inlägg
#1

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
%>

<HTML>
Hejsan alla mozilla-läsare!
</HTML>

<%end if%>

cyprysMedlem sedan dec. 20003 105 inlägg
#2

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)
robert999Medlem sedan maj 200328 inlägg
#3

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
%>

<HTML>
Hejsan alla mozilla-läsare!
</HTML>

<%
else
Response.Redirect "http://exempelvisminhemsida.se/ejmozilla.asp"
%>
<%end if%>

PoffeMedlem sedan apr. 20022 935 inlägg
#4
If InStr(webhuvud,"mozilla") = 0 Then

Som cyprys skrev...

robert999Medlem sedan maj 200328 inlägg
#5

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.

cyprysMedlem sedan dec. 20003 105 inlägg
#6

Aha. Trodde du ville separera på en lägre nivå. Alltså IE vs Mozilla/Firefox/Opera/osv.

Genererad på 385 ms · cache AV · v20260730165559-full.f96bc7eb