Avatar billede steen_hansen Forsker
27. januar 2004 - 21:49 Der er 39 kommentarer og
1 løsning

Jeg vil have et logon-link, hvis URL = noget_bestemt

<%
Dim wURL
wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
wURL = Left(sURL, (InStrRev(sURL, "/")))

If wURL = "http://www.minside.dk/mappenavn/" Then
%>

    <% If Session("username") = "" Then %>
        <a href="/mappenavn/admin/login.asp" onFocus="this.blur()"><b>Login</b></a>
    <% Else %>
        <a href="/mappenavn/admin/dolog.asp?logout" style="WIDTH: 100%" onFocus="this.blur()"><b>Log ud</b></a>
    <% End If %>
    <% End If %>

Problemet er, at jeg ikke får login-linket, selvom URL'en hedder

"http://www.minside.dk/mappenavn/"

Hvorfor ikke?
Avatar billede steen_hansen Forsker
27. januar 2004 - 22:01 #1
Ups, den går ikke, brugeren skal have mulighed for at logge ud.

Lægger lige hjernen lidt i blød
Avatar billede eagleeye Praktikant
27. januar 2004 - 22:02 #2
Har du udsrevet wURL så du kan se den er "http://www.minside.dk/mappenavn/" ??

Prøv evt SCRIPT_NAME istedet for url
Avatar billede steen_hansen Forsker
27. januar 2004 - 22:25 #3
Jeg prøver, men et problem, jeg ikke lige havde taget højde for var, at man også skal kunne logge ud, når først man er logget ind.

Det hele drejer sig om, at jeg kun vil have login-linket på én bestemt side. Men jeg bliver nok nødt til at lave 2 forskellige includes. Det er heller ikke noget problem, men jeg prøver lige dit forslag af :o)
Avatar billede eagleeye Praktikant
27. januar 2004 - 22:28 #4
Kan du så ikke flytte din logud foran tjekke på wURL ?

<%
Dim wURL
wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
wURL = Left(sURL, (InStrRev(sURL, "/")))

    If Session("username") <> "" Then %>
        <a href="/mappenavn/admin/dolog.asp?logout" style="WIDTH: 100%" onFocus="this.blur()"><b>Log ud</b></a>
<%
    end if

If wURL = "http://www.minside.dk/mappenavn/" Then
%>
    <% If Session("username") = "" Then %>
        <a href="/mappenavn/admin/login.asp" onFocus="this.blur()"><b>Login</b></a>
    <% End If %>
<% End If %>
Avatar billede steen_hansen Forsker
27. januar 2004 - 22:34 #5
Hm, det var da en idé, prøver ...
Avatar billede steen_hansen Forsker
27. januar 2004 - 23:36 #6
Der kommer hverken login eller logud?
Avatar billede eagleeye Praktikant
27. januar 2004 - 23:39 #7
Logud skulle vises hvis Session("username") er forskellig fra ""
Er det den rigtige session variable?
Avatar billede steen_hansen Forsker
27. januar 2004 - 23:44 #8
Det kunne være, at det var en god idé at skrive den ud, 2 sek.
Avatar billede steen_hansen Forsker
27. januar 2004 - 23:50 #9
Nej, jeg kan ikke udskrive wURL, og jeg har forsøgt nøjagtigt dit forslag.

eagleeye, jeg daffer i seng, kigger i morgen, og håber du kan komme med et godt forslag :o)

Jeg har også et par idéer, men jeg kan ikke holde hovedet oprejst længere :o)
Avatar billede eagleeye Praktikant
27. januar 2004 - 23:52 #10
Ok ;) jeg er også på vej i seng inden for de næste 5-10 minutter.
Hvis den ikke udskriver noget tyder det måske på filen ikke bliver includet eller kørt?
Avatar billede steen_hansen Forsker
27. januar 2004 - 23:54 #11
Jo, jeg kan sagtens køre den. Prøver lige at kigge igen
Avatar billede steen_hansen Forsker
27. januar 2004 - 23:55 #12
Hvis jeg skriver

Response.Write wURL

burde URL'en da blive skrevet ud?

<%
Dim wURL
wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
wURL = Left(sURL, (InStrRev(sURL, "/")))
Response.Write wURL

.
.
.
.
Avatar billede eagleeye Praktikant
27. januar 2004 - 23:57 #13
Ja så skulle den blive udskrevet.
Avatar billede steen_hansen Forsker
27. januar 2004 - 23:58 #14
Det gør den ikke :o/

Skal vi smutte? Jeg er træt :o)

Håber vi snakkes ved i morgen :o)
Avatar billede eagleeye Praktikant
27. januar 2004 - 23:59 #15
Ja lad os det. godnat og sov godt :)
Avatar billede steen_hansen Forsker
27. januar 2004 - 23:59 #16
I lige måde :o)
Avatar billede steen_hansen Forsker
28. januar 2004 - 00:11 #17
Hvis jeg REM'er dette ud, fungerer det, men login skulle jo kun stå på én side; nu vil det stå på alle:

<%
Dim wURL
wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
wURL = Left(sURL, (InStrRev(sURL, "/")))

    If Session("username") <> "" Then %>
        <a href="/mappenavn/admin/dolog.asp?logout" style="WIDTH: 100%" onFocus="this.blur()"><b>Log ud</b></a>
<%
    end if

'If wURL = "http://www.minside.dk/mappenavn/" Then
%>
    <% If Session("username") = "" Then %>
        <a href="/mappenavn/admin/login.asp" onFocus="this.blur()"><b>Login</b></a>
    <% End If %>
<%' End If %>
Avatar billede steen_hansen Forsker
28. januar 2004 - 00:16 #18
Denne her virker fint:

wURL="http://"+Request.ServerVariables("SERVER_NAME")+Request.ServerVariables("PATH_INFO")

Så skal jeg vel egentlige bare redirecte til /mappenavn/default.asp, så default.asp kommer op i adresselinie, og ikke til /mappenavn/

Nej, NU smutter jeg. Snakkes :o)
Avatar billede eagleeye Praktikant
28. januar 2004 - 00:17 #19
Ja så udskriver den hver gang, men hvis du har Response.write wURL og den ikke skriver noget ud er det det som laver wURL som skal ændre.

Hvad så hvis du bruger SCRIPT_NAME i stedet for URL ??
Avatar billede eagleeye Praktikant
28. januar 2004 - 00:18 #20
Ja ok PATH_INFO virker nok også ok.
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:03 #21
Jeg prøver - igen :o)
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:07 #22
Hverken SCRIPT_NAME eller PATH_INFO istedet for URL virker:

Jeg har forsøgt

wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
wURL = Left(sURL, (InStrRev(sURL, "/")))

wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("SCRIPT_NAME")
wURL = Left(sURL, (InStrRev(sURL, "/")))

wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("PATH_INFO")
wURL = Left(sURL, (InStrRev(sURL, "/")))

Ingen af dem virker :o(
Avatar billede eagleeye Praktikant
28. januar 2004 - 22:09 #23
Så lige noget nu. I linje 2 bruges sURL men den hedderr wURL i linje over så prøv:

wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("SCRIPT_NAME")
wURL = Left(wURL, (InStrRev(wURL, "/")))
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:12 #24
Fuk, det er fra et andet eksperiment :o)

Godt du er så opmærksom. Prøver ...
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:16 #25
Fedest! Nu bliver den korrekte URL udskrevet :o)

Response.Write wURL

Og nu virker det sq! Tak for hjælpen, bedste ven! Læg lige et svar :o)
Avatar billede eagleeye Praktikant
28. januar 2004 - 22:18 #26
Ok, her er et svar :)
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:19 #27
MEN ... nu kommer linket ind på alle sider, hvis URL'en er www.minside.dk/mappenavn/

Så skal jeg henvise til et bestemt dokument, skal jeg ikke?

www.minside.dk/mappenavn/default.asp

Det kan vel gøres med

wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:20 #28
Takker for hjælpen. Håber lige du vil hjælpe med den sidste også :o)
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:20 #29
Det kan vel gøres med

wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")

uden

wURL = Left(sURL, (InStrRev(sURL, "/")))

- mente jeg
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:21 #30
Nej, det virkede ikke, så forsinder det helt :o(
Avatar billede eagleeye Praktikant
28. januar 2004 - 22:21 #31
Ja så skal du ikke fjerne filnavnet. Det skal bare være:

wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
Avatar billede eagleeye Praktikant
28. januar 2004 - 22:23 #32
Hvis du kun vil hvade den vist i en bestemt fil så prøv:

wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("SCRIPT_NAME")

if wURL = "www.minside.dk/mappenavn/default.asp" then
  'Vis linket

end if
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:23 #33
Ok, det er case sensitive:

wURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")

If wURL = "http://www.minside.dk/mappenavn/Default.asp"

Så virker det, den er pinge-ling nu! :o)
Avatar billede eagleeye Praktikant
28. januar 2004 - 22:23 #34
Eller bare:

if Request.ServerVariables("SCRIPT_NAME") = "/mappenavn/default.asp" then
  vis filen
end if
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:24 #35
Uden http:// foran, altså

TAK, eagleeye :o)
Avatar billede eagleeye Praktikant
28. januar 2004 - 22:24 #36
Ja den er case sensitiv. Så kan måske være en ide at sætte LCase omkring så alle bogstaver er små.

LCase(Request.ServerVariables("SCRIPT_NAME") )
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:26 #37
Det vil nok være smart, prøver lige
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:27 #38
Så behøver jeg vel ikke at dimensionere wURL?
Avatar billede eagleeye Praktikant
28. januar 2004 - 22:29 #39
Nej det er kun nødvendigt hvis man bruger Option Explicit som fortæller man skal definere sine variable.
Avatar billede steen_hansen Forsker
28. januar 2004 - 22:29 #40
Det virker perfekt, eagle! Endnu en gang: Tak for hjælpen :o)
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