Avatar billede funstuff.dk Nybegynder
12. november 2001 - 21:27 Der er 19 kommentarer og
1 løsning

Hvilken browser?

Hej..

Nogle der har en asp kode som tjekker om der er IE 5 eller nyer brugeren har..

Skal kunne bruges i en if sætning..
Avatar billede netz-dk Nybegynder
12. november 2001 - 21:32 #1
Jeg ved ikke men asp, men jeg ved at du kan finde noget i JavaScript, som du kan hente på http://www.javascriptsource.com

- Netz.dk
Avatar billede tmceu Praktikant
12. november 2001 - 21:57 #2
Du kan finde browseren i Request.ServerVariables(\"HTTP_USER_AGENT\")
Avatar billede j.robert Nybegynder
12. november 2001 - 22:02 #3
<%
\' create an instance of the Browser Capabilities component
Set browserdetect = Server.CreateObject(\"MSWC.BrowserType\")

\' find out if the browser viewing this page supports JavaScript
javascript=browserdetect.JavaScript

if javascript = \"True\" then
    \' redirect browser to a page containing lots of JavaScript enhancements
    response.redirect(\"http://www.mydomain.com/javascript-enhanced-page.html\")
else
    \' redirect browser to a basic page that doesn\'t contain JavaScript
  response.redirect(\"http://www.mydomain.com/standard-page.html\")
end if
%>


Læs evt. følgende artikel:
http://www.abiglime.com/webmaster/articles/asp/121798.htm
Avatar billede funstuff.dk Nybegynder
12. november 2001 - 22:48 #4
tjekker den kun om det er 5.0 eller nyere eller hva?
Avatar billede j.robert Nybegynder
12. november 2001 - 23:34 #5
Sådan får du information fra en browser klient:

<%
\' create an instance of the Browser Capabilities component
Set browserdetect = Server.CreateObject(\"MSWC.BrowserType\")

\' find some properties of the browser being used to view this page
browser=browserdetect.Browser
version=browserdetect.Version
majorver=browserdetect.Majorver
minorver=browserdetect.Minorver
platform=browserdetect.Platform
frames=browserdetect.Frames
tables=browserdetect.Tables
cookies=browserdetect.Cookies
javascript=browserdetect.JavaScript

\'Denne del kan undværes
\' send some output to the web browser
response.write (\"Browser: \" & browser & \"<BR>\")
response.write (\"Version: \" & version & \"<BR>\")
response.write (\"Majorver: \" & majorver & \"<BR>\")
response.write (\"Minorver: \" & minorver & \"<BR>\")
response.write (\"Platform: \" & platform & \"<BR>\")
response.write (\"Supports frames: \" & frames & \"<BR>\")
response.write (\"Supports tables: \" & tables & \"<BR>\")
response.write (\"Supports cookies: \" & cookies & \"<BR>\")
response.write (\"Supports java script: \" & javascript & \"<BR>\")
%>

<%
\' create an instance of the Browser Capabilities component
Set browserdetect = Server.CreateObject(\"MSWC.BrowserType\")

\' find out if the browser viewing this page supports JavaScript
javascript=browserdetect.JavaScript

if Browser = \"Netscape\" AND Version = \"4.0\" then
    \' redirect browser to a page containing lots of Netscape enhancements
    response.redirect(\"http://www.mydomain.com/Netscape-enhanced-page.html\")

Else If Browser = \"IE\" AND Version = \"5.0\" then
    \' redirect browser to a page for IE5 Enhancements
    response.redirect(\"http://www.mydomain.com/ie5-enhanced-page.html\")

else
    \' redirect browser to a basic page that doesn\'t contain JavaScript
  response.redirect(\"http://www.mydomain.com/standard-page.html\")
end if
%>

Du kan altså gå ind og vælge/tilføje de browser typer du vil redirecte i mit tidligere script.
- Den checker lige det du vil have den til at checke.

Læs nu lige dette link, da det nok vil hjælpe lidt på forståelsen:
http://www.abiglime.com/webmaster/articles/asp/121798.htm

Filen \"browscap.ini\" benyttes af komponenten til at \"læse\" klientens browser.
- det vil være en god ide at hente nyeste version.

Du kan også vælge at benytte \"select case\".
Avatar billede j.robert Nybegynder
12. november 2001 - 23:36 #6
Hov jeg lavede lige et par fejl!
Avatar billede tmceu Praktikant
12. november 2001 - 23:39 #7
j.robert >> der er ikke mange ved sine fulde fem, der bruger Browscap, primært fordi browscap.ini er håbløs bagud i.f.t. hvilke browsere der findes. Hvis du absolut vil bruge den slags check, bør du købe Browser Hawk fra CyScape, som er det firma der \"ejer\" browscap.ini.

funstuff >> hvis du vil bruge den løsning som j.robert foreslår, skal du være forberedt på at skulle vedligeholde browscap.ini. Den officielle version er ikke opdateret siden Februar 2000, men der findes evt. nogle uautoriserede versioner derude.

CyScape findes på www.browscap.com, browscap.ini på http://www.cyscape.com/browscap/
Avatar billede j.robert Nybegynder
12. november 2001 - 23:44 #8
Rettelse af script:

<%
\' create an instance of the Browser Capabilities component
Set browserdetect = Server.CreateObject(\"MSWC.BrowserType\")

\' find out if the browser viewing this page supports JavaScript, IE5, Netscape etc.
javascript=browserdetect.JavaScript
browser=browserdetect.Browser
version=browserdetect.Version


if Browser = \"Netscape\" AND Version = \"4.0\" then
    \' redirect browser to a page containing lots of Netscape enhancements
    response.redirect(\"http://www.mydomain.com/Netscape-enhanced-page.html\")

Else If Browser = \"IE\" AND Version = \"5.0\" then
    \' redirect browser to a page for IE5 Enhancements
    response.redirect(\"http://www.mydomain.com/ie5-enhanced-page.html\")

Else If JavaScript = \"True\" then
    \' redirect browser to a page for JavaScript Enhancements
    response.redirect(\"http://www.mydomain.com/Javascript-enhanced-page.html\")

else
    \' redirect browser to a basic page that doesn\'t contain JavaScript
  response.redirect(\"http://www.mydomain.com/standard-page.html\")

end if
%>

Dette er bare nogle eksempler, som du kan udbygge som du har lyst til.
Avatar billede j.robert Nybegynder
13. november 2001 - 00:07 #9
For at tilfredsstille tmceu kan du gøre følgende:

<%
\' create an instance of the Browser Capabilities component
Set browserdetect = Request.ServerVariables (\"HTTP_USER_AGENT\")

if browserdetect = \"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)\" then
    \' redirect browser to a page containing lots of IE5/NS4 enhancements
    response.redirect(\"http://www.mydomain.com/IE5-enhanced-page.html\")

else
    \' redirect browser to a basic page  response.redirect(\"http://www.mydomain.com/standard-page.html\")

end if
%>

mmmhhh... Ja, sikke alle de nye browser versioner vi hele tiden får.

Så vidt jeg forstår, skal funstuff.dk kun lave en simpel redirect og ikke ege super browser spion.

...Men uanset hvad, er og bliver det en smagssag.
- Ved sine fulde fem eller ej.

Du kunne evt. også benytte et javascript check:
http://www.gpick.net/sbr/asp/page203.asp
Avatar billede j.robert Nybegynder
13. november 2001 - 00:07 #10
ege=lege
Avatar billede tmceu Praktikant
13. november 2001 - 00:48 #11
j.robert >> du behøver ikke tilfredsstille mig, det er funstuff der har behov for en løsning :-)

Men du kan jo prøve at smutte en tur forbi CyScape (du ved, dem med browscap.ini som du bygger hele dit forslag på) og læse lidt i deres knowledgebase om browser kompabilitetsproblemer, før du blot smider det første eksempel på brug af komponenter som findes i alle ASP bøger.

\"Ja, sikke alle de nye browser versioner vi hele tiden får\" <- tag et kig på din egen browscap.ini og se hvor mange nye browsere/versioner der er kommet siden.

Men nok om det. Min negative kommenteren af dit forslag skyldes ganske simpelt at jeg mener du foreslår en meget kortsigtet løsning som ikke uden manuelt vedligeholdelse af browscap.ini vil kunne anvendes fremover, når funstuff nu beslutter sig til at teste for 6.0 eller noget helt tredje.

Og så har du ret, det er en smagssag. Men jeg har ikke oplevet en eneste proffesionel ASP udvikler, der har baseret sit browsercheck på browscap.
Avatar billede funstuff.dk Nybegynder
13. november 2001 - 10:59 #12
Takker, det var jo en bedre måde end at bruge et java script...
Avatar billede j.robert Nybegynder
13. november 2001 - 18:18 #13
funstuff.dk>> Er glad for at kunne hjælpe :)

tmceu>> Det er da rart med lidt kritik, men var det ikke mere på sin plads, at give en løsning på spørgsmålet?
Avatar billede tmceu Praktikant
13. november 2001 - 20:38 #14
j.robert >> det gjorde jeg faktisk også. Mit forslag giver nøjagtig samme information som dit, men vel at mærke uden at pakke det ind i et totalt unødvendigt objekt og uden afhængigheder af browscap.ini.

Det indser funstuff desværre først den dag vedkommende vil kontrollere for eks. IE el. Netscape 6 og din løsning returnerer \"Unknown\".

Det er sådanne små ting der gør forskellen :-)
Avatar billede j.robert Nybegynder
13. november 2001 - 21:21 #15
Hvis du ikke ved hvordan du undgår den fejlmelding, så er du vist ikke selv meget værd.

Gider iøvrigt ikke diskutere mere med dig om det emne, da det er funstuff.dk der træffer den afgørende beslutning.

Han kan imodsætning til dig tiltale og kommentere på en lidt pænere måde (lidt stof til eftertanke).
Avatar billede tmceu Praktikant
13. november 2001 - 21:35 #16
j.robert >> hør lige her, hr. jeg-er-næsten-måske-MCSE

Jeg har ikke noget problem med at håndtere den komponent, men har bevidst valgt ikke at bruge den, af de årsager jeg allerede har nævnt. Du foreslog en løsning med nogle klare ulemper, som du på ingen måde gør opmærksom på. Så hjælper det ikke meget hvis du selv kan håndtere dem, når funstuff sandsynligvis ikke kan.

Men i din point jagt betyder det vel i virkeligheden ikke noget om spørgeren får et objektivt svar ?

Jeg håber inderligt at du bruger resten af din aften på den desperate point jagt du har gang i lige nu, fremfor at komme med flere halve løsninger. At du svarer på et 300 points spørgsmål fra en helt ny bruger, understreger med al tydelighed, at point vist betyder mest for dig.
Avatar billede j.robert Nybegynder
13. november 2001 - 21:58 #17
tmceu>> Din sidste kommentar vælger jeg at ignorere. - Du må vist føle dig snydt.

Vil du have de 30 point?
Avatar billede tmceu Praktikant
13. november 2001 - 22:48 #18
Du har ikke forstået pointen. Det her handler på ingen måde om point, som jeg stadig tror det gør for dig - selv om du så flot vælger at ignorere den bemærkning. Når du gider \"jagte\" en bruger for at få dine 300 point på et spørgsmål som seriøse brugere herinde ikke kunne drømme om at svare på, tror jeg ikke du kan overbevise andre end dig selv om at du ikke prioriterer point højest.

Pointen er, at du foreslår en i mine øjne dårlig løsning, uden at gøre opmærksom på ulemperne. Og så gør du alt hvad du kan for at forsvare den løsning uden andre argumenter end \"mmmhhh... Ja, sikke alle de nye browser versioner vi hele tiden får.\", respekt :-)

Men lad os nu antage at funstuff har implementeret dit forslag og ikke har set diskussionen efter pointafgivning. Og svar så ærligt på, hvad der sker når vedkommende beslutter sig for at kontrollere for ver. 6 browsere ?
Avatar billede j.robert Nybegynder
13. november 2001 - 23:00 #19
Hør nu hér tmceu skulle vi ikke mødes over en stille kop kaffe og få os en hygge sludder.
-det er da gået fuldstændig over gevind det hér.

Spørgsmål lød på IE5 og funstuff har læst din kommentar angående browscap.ini.

Jeg rettede endda mit script til at benytte HTTP_USER, hvori min kommentar til dig ikke var ment negativt, men mere som at jeg prøvede at se \"objektivt\" på tingende.
Avatar billede tmceu Praktikant
13. november 2001 - 23:15 #20
IE5 eller nyere blot for at præcisere og være fortsat irriterende.

Men enig, det er kørt over gevind, men jeg kan bare ikke stoppe når jeg ser det som for mig ligner halve løsninger. Jeg synes alt for mange herinde kommer med ensidige/kortsigtede løsninger og totalt ubrugelige påstande.

Det virker på mig som en rød klud på en olm tyr :-)

Det hyppigste eksempel er når en eller anden spørger om ASP eller PHP er bedst. Og så vælter det ind med \"PHP rules, ASP sucks\" eller omvendt. Oversrivelsen fremmer jo som bekendt forståelsen, men det er lidt den kasse jeg mentalt har stoppet dit svar ned i.

Vi mødes forhåbentlig snart til en knap så ophedet debat i andre spørgsmål...
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