Avatar billede noobie Nybegynder
14. februar 2004 - 12:44 Der er 51 kommentarer og
1 løsning

Hvad betyder denne fejl

Hvad betyder denne fejl og hvad gør jeg ved den ?

Microsoft VBScript compilation error '800a0401'

Expected end of statement

/coldice/download/download.asp, line 17

Response.AddHeader "Refresh", "0;URL="filer/" + " & Request.Querystring("fil") & "
--------------------------------------^
Avatar billede thesurfer Nybegynder
14. februar 2004 - 13:32 #1
Må vi se noget mere kode? F.eks. de 3 linier før og efter linien med Response.AddHeader..
Avatar billede thesurfer Nybegynder
14. februar 2004 - 13:34 #2
Gad vide om det ikke skulle være:
Response.AddHeader("Refresh", "0;URL='filer/" & Request.Querystring("fil") & "'")
Avatar billede thesurfer Nybegynder
14. februar 2004 - 13:35 #3
Eller bare:
Response.AddHeader "Refresh", "0;URL='filer/" & Request.Querystring("fil") & "'"
Avatar billede noobie Nybegynder
14. februar 2004 - 13:38 #4
neej nu får jeg den her fejl ved brug af den øverste af dine eksempler:
Microsoft VBScript compilation error '800a0414'

Cannot use parentheses when calling a Sub

/coldice/download/login.asp, line 11

Response.AddHeader("Refresh", "0;URL='filer/" & Request.Querystring("fil") & "'")
---------------------------------------------------------------------------------^
Avatar billede thesurfer Nybegynder
14. februar 2004 - 13:39 #5
Noget data jeg fandt på http://www.juicystudio.com/tutorial/asp/addheader.asp :
fPath = "http://www.domain.co.uk/downloads/" & fName
' Add Header to HTML stream
Response.AddHeader "Refresh", "10; URL=" & fPath

Det er nok fejl i dine " tegn, der giver fejlmeddelelsen..
Avatar billede thesurfer Nybegynder
14. februar 2004 - 13:39 #6
uden ()
Avatar billede noobie Nybegynder
14. februar 2004 - 13:40 #7
Og ved den nederste af dine eksempler får jeg af fejl:

Directory Listing Denied
This Virtual Directory does not allow contents to be listed
Avatar billede noobie Nybegynder
14. februar 2004 - 13:41 #8
??? jeg er altså helt noob til asp !
Avatar billede thesurfer Nybegynder
14. februar 2004 - 13:42 #9
Er du sikker på at der står noget efter "?fil="?
prøv at skrive:
Response.write "*" & Request.Querystring("fil") & "*"

Hvis du får "**", står der IKKE noget i Request.Querystring("fil").
Avatar billede noobie Nybegynder
14. februar 2004 - 13:44 #10
Min kode ser således ud:
<html>
<head>
<title>Login</title>
</head>
<body>
<%
If RTrim(request.form("login"))  = "test" AND RTrim(request.form("password"))  = "test" Then

  Session("login") = "JA"
  Session.Timeout = 1 
  Response.AddHeader "Refresh", "0;URL='filer/" & Request.Querystring("fil") & "'"

Else

  Session("login") = "NEJ"
  Session.Timeout = 1
  Response.Redirect "formular.asp"

End If
%>
</body>
</html>
Avatar billede thesurfer Nybegynder
14. februar 2004 - 13:45 #11
Hvordan ser din form ud?
Avatar billede thesurfer Nybegynder
14. februar 2004 - 13:51 #12
Fejlen

"Directory Listing Denied
This Virtual Directory does not allow contents to be listed"

opstår når man skriver "/" og ikke skriver filnavn efter "/".. din server er indstillet til ikke at vis filer og mapper i den mappe du skriver.. sikkerhedssindstilling..
Avatar billede noobie Nybegynder
14. februar 2004 - 14:19 #13
Jeg er igang med at lave et download script der når man f.e.k.s. går ind i download.asp?fil=hej.zip så chekker den om login seesion er "JA" eller "NEJ"...

Altså download.asp ser således ud:

<%
Response.Cookies("downloadfile")("navn") = "" & Request.Querystring("fil") & "" 

Response.Cookies("downloadfile").Expires = DateAdd("h",1,Now())

Response.Cookies("downloadfile").Domain = "http://frip.dk/coldice"

Response.Cookies("downloadfile").Path = "/download"
%>
Filen downloades nu !
<%
If Session("login") <> "JA" Then
    Response.Redirect "formular.asp"
End if

If Session("login") <> "NEJ" Then
    Response.AddHeader "Refresh", "0;URL='filer/" & Request.Querystring("fil") & "'"
End If
%>

Formular:

<html>
<head>
<title>Login System.</title>
</head>
<body>
<form method="post" action="login.asp">
<p>Login:<input type="text" name="login">
<p>Password: <input type="password" name="password">
<p><input type="submit" value="luk mig ind">
</form>
</body>
</html>

Login:

<html>
<head>
<title>Login</title>
</head>
<body>
<%
If RTrim(request.form("login"))  = "test" AND RTrim(request.form("password"))  = "test" Then

  Session("login") = "JA"
  Session.Timeout = 1 
  Response.AddHeader "Refresh", "0;URL='filer/" & Request.Querystring("fil") & "'"

Else

  Session("login") = "NEJ"
  Session.Timeout = 1
  Response.Redirect "formular.asp"

End If
%>
</body>
</html>

Alle filer som skal downloades ligger inde i mappen filer!!!
Avatar billede noobie Nybegynder
14. februar 2004 - 14:20 #14
i stedet for login og formular så mente jeg login.asp og formular.asp
Avatar billede thesurfer Nybegynder
14. februar 2004 - 14:21 #15
Prøv det her:
<form method="post" action="login.asp?fil=<%=request.querystring("fil")%>">
Avatar billede noobie Nybegynder
14. februar 2004 - 14:24 #16
Jeg får stadig denne fejl !

Directory Listing Denied
This Virtual Directory does not allow contents to be listed.
Avatar billede thesurfer Nybegynder
14. februar 2004 - 14:28 #17
Er du sikker på at der står noget efter "?fil="?
prøv at skrive:
Response.write "*" & Request.Querystring("fil") & "*"

Hvis du får "**", står der IKKE noget i Request.Querystring("fil").
Avatar billede noobie Nybegynder
14. februar 2004 - 14:29 #18
Hvor skal jeg skrive det henne ?
Avatar billede thesurfer Nybegynder
14. februar 2004 - 14:32 #19
I "login" lige før:

<%
If RTrim(request.for ....
Avatar billede thesurfer Nybegynder
14. februar 2004 - 14:33 #20
Prøv:

<%
Response.write "*" & Request.Querystring("fil") & "*"
Response.End

If RTrim(request.for ....
Avatar billede noobie Nybegynder
14. februar 2004 - 14:34 #21
jeg prøvede lige at sætte redirect tiden ned så jeg kunne nå at se hvad der stod, og der stod på den tomme side:
Response.write "*" & Request.Querystring("fil") & "*"
Avatar billede noobie Nybegynder
14. februar 2004 - 14:35 #22
ahhh nu virker det der står to ** !!!
Avatar billede noobie Nybegynder
14. februar 2004 - 14:37 #23
altså på login siden står der **
Avatar billede noobie Nybegynder
14. februar 2004 - 14:38 #24
men den redirect'er ikke mere !
Avatar billede thesurfer Nybegynder
14. februar 2004 - 14:43 #25
Min test gør at den ikke redirecter. Dit problem er, at der ikke kommer til at stå "?fil=test.exe" (test.exe er bare et eksempel).
Hvis der ikke står noget efter "fil=", vil der være fejl.

Jeg tror at du blander 2 ting sammen. Du skal bruge følgende:
#1 En login side.
#2 En download side.

På #1 logger man ind, og Session("login") sættes til "JA".
På #2 checker den om Session("login") er lig "JA". Hvis det er, sendes man videre. Hvis ikke, skal man sendes tilbage til #1.
Avatar billede noobie Nybegynder
14. februar 2004 - 14:49 #26
tjaaa...
1. Jeg trykker på et link : <a href="download.asp?fil=test.exe
2. Download.asp checker om man tidligere har logget på...
a. hvis ja redirect til test.exe
b. hvis nej redirect til formular.asp (samtidig skal den gemme en cookie om hvorfor en fil man vil downloade...
3. man logger ind og session bliver sat til "JA"
4. man kommer ind på siden login.asp som straks redirect'er til filen (som vi har gemt i en cookie...)

Forstår du det ?  ;-)
Avatar billede thesurfer Nybegynder
14. februar 2004 - 14:55 #27
Ja.
Du har ikke vist mig din download.asp.

Jeg ville normalt gøre det sådan her:
1. login.asp: Hvis korrekt, Session("login") = "JA", Ellers Session("login") = "NEJ"
2. side.asp: På en side findes <a href="download.asp?fil=test.exe">download test.exe</a>
3. downoad.asp: hvis JA -> download fil, Hvis NEJ -> login.asp?ref=<%siden man kom fra%>

Det er det du vil, ik?
Avatar billede noobie Nybegynder
14. februar 2004 - 14:59 #28
ikke helt...
1. side.asp: På en side findes <a href="download.asp?fil=test.exe">download test.exe</a>
2. Download.asp: hvis JA -> download fil, Hvis NEJ -> login.asp?ref=<%Kommer man til der hvor man logger ind%>
3. Man logger ind og så downloader den fil og sætter session til ja
Avatar billede thesurfer Nybegynder
14. februar 2004 - 15:00 #29
Det var også det jeg skrev :) Eller i det mindste, det jeg mente :)
Jeg prøver lige at se om jeg kan smide noget kode sammen..
Avatar billede noobie Nybegynder
14. februar 2004 - 15:01 #30
Og jo jeg har vist dig min download.asp
Hvis ikke du lige kan se den så er den her:

<%
Response.Cookies("downloadfile")("navn") = "" & Request.Querystring("fil") & "" 

Response.Cookies("downloadfile").Expires = DateAdd("h",1,Now())

Response.Cookies("downloadfile").Domain = "http://frip.dk/coldice"

Response.Cookies("downloadfile").Path = "http://frip.dk/coldice/download"
%>
Filen downloades nu !
<%
If Session("login") <> "JA" Then
    Response.Redirect "formular.asp"
End if

If Session("login") <> "NEJ" Then
    Response.AddHeader "Refresh", "0;URL='filer/" & Request.Querystring("fil") & "'"
End If
%>
Avatar billede noobie Nybegynder
14. februar 2004 - 15:01 #31
Det ville være skønt...
Avatar billede thesurfer Nybegynder
14. februar 2004 - 15:02 #32
ja, okay.. :)
Jeg har sommetider en dårlig hukommelse.. 'hvem er du?' ;-)
Avatar billede noobie Nybegynder
14. februar 2004 - 15:02 #33
jeg venter bare... Har du nogen ide om hvor lang tid det vil tage ?
Avatar billede noobie Nybegynder
14. februar 2004 - 15:03 #34
thesurfer skrev:
  >ja, okay.. :)
  >Jeg har sommetider en dårlig hukommelse.. 'hvem er du?' ;-)

HE HE ;-)
Avatar billede thesurfer Nybegynder
14. februar 2004 - 15:03 #35
Nej, skal muligvis spise samtidigt :) Men kom tilbage om en halv time.. så kan det være at jeg har skrevet tilbage..
Avatar billede noobie Nybegynder
14. februar 2004 - 15:04 #36
okay altså kl. halv fire ikke...
Avatar billede noobie Nybegynder
14. februar 2004 - 15:04 #37
så "skrives" vi ved..!
Avatar billede noobie Nybegynder
14. februar 2004 - 15:53 #38
Jaaa så er tiden sådan efterhånden gået... ER du der ?
Avatar billede thesurfer Nybegynder
14. februar 2004 - 15:57 #39
hehe.. ja :)
Er lige ved at rydde op, og skrive nogle kommentar til hvordan det virker..
Avatar billede noobie Nybegynder
14. februar 2004 - 15:58 #40
Oki
Avatar billede noobie Nybegynder
14. februar 2004 - 16:02 #41
Du siger bare til når du er færdig!
Avatar billede thesurfer Nybegynder
14. februar 2004 - 16:06 #42
Det regnede jeg også med :)
Avatar billede noobie Nybegynder
14. februar 2004 - 16:10 #43
;-)
Avatar billede noobie Nybegynder
14. februar 2004 - 16:10 #44
Jeg skal lige en og have en toast... Kommer om 6 min og 36 sekunder ;-)
Avatar billede noobie Nybegynder
14. februar 2004 - 16:11 #45
en=ind
Avatar billede thesurfer Nybegynder
14. februar 2004 - 16:18 #46
Der er 4 filer:

login.asp - siden hvor man logger ind
logout.asp - siden hvor man logger ud
download.asp - siden der downloader filen
protect.asp - siden der sætter betingelserne for download af filer



*** LOGIN.ASP:

<%
Option Explicit ' Bør altid bruges!
' Hvis Option Explicit bruges, SKAL ALLE variablerne defineres/dimmes!
' På den måde undgår man stavefejl.

' Check - Har brugeren klikket på Send-knappen?:
if request.servervariables("request_method") = "POST" then
' Ja, brugeren har indstastet brugernavn/kodeord, og der skal valideres:

' Check - Er brugernavn & kodeord korrekte?:
if request.form("username") = "test" and request.form("password") = "test" then

' Ja, brugernavn & kodeord er korrekte. Sæt cookien "login" til "JA"
  Response.Cookies("data")("login") = "JA"

' Check - Hvis der står noget i "fil", dvs brugeren har prøvet på at download en fil, uden at være logget ind?
  ' ja, download filen:
  if request.querystring("fil") <> "" then Response.AddHeader "Refresh", "0;URL=filer/" & Request.Querystring("fil")

  ' Nej, brugeren har ikke prøvet på at download en fil. Derfor skal brugeren have at vide at han/hun nu er logget ind:
%>

Du er nu logget ind.

<%
' Nej, brugernavn/kodeord er forkert!. Sæt cookien "login" til "NEJ"
else
  Response.Cookies("data")("login") = "NEJ"

  ' Giv brugeren en fejlmeddelelse:
  Response.write "Brugernavn eller kodeord er forkert!"

  ' ved at skrive "brugernavn eller kodeord" ("eller"),
  ' undgår man at fortælle brugeren at han har fundet et gyldig brugernavn. På den måde
  ' kan man øge sikkerheden.
end if


else

' brugeren er lige gået ind på siden, og har derfor IKKE skrevet brugernavn/kodeord og klikket på Send-knappen:
%>

<form action="login.asp<% if request.querystring("fil") <> "" then response.write "?fil=" & request.querystring("fil") %>" method="post">
Brugernavn: <input type="text" name="username" value="test">
<br>
Kodeord: <input type="password" name="password" value="test">
<br>
<input type="submit" value="Send">
</form>

<% end if %>


*********************************************


*** LOGOUT.ASP:

<%
Response.Cookies("data").Expires = Now
%>

Du er nu logget ud. Gå til <a href="index.asp">Forsiden</a>


*********************************************


*** DOWNLOAD.ASP:

<%
' Sæt filnavnet i cookien:
Response.Cookies("data")("fil") = Request.Querystring("fil")

' Inkluder beskyttelses-siden, som kan rettes til at kontrollere flere betingelse:
%>

<!-- #include file="protect.asp" -->

<%
' Check - Er brugeren logget ind?
if Request.Cookies("data")("login") = "JA" then

  ' Ja, brugeren er logget ind -> Download fil:
  Response.AddHeader "Refresh", "0;URL=filer/" & Request.Querystring("fil")
end if
%>


*********************************************


*** PROTECT.ASP:

<%
' Denne side kan rettes, så man kan teste/checke flere kombinationer

' Check - Er man logget ind?
if Request.Cookies("data")("login") <> "JA" then
' Hvis ikke, sendes man til "login.asp?fil=NAVNET_PÅ_DEN_FIL_MAN_VIL_DOWNLOAD:"
response.redirect "login.asp?fil=" & Request.Cookies("data")("fil")
end if
%>
Avatar billede thesurfer Nybegynder
14. februar 2004 - 16:22 #47
Kommer lige i tanke om noget overflødigt kode i download.asp. Uden koden, ser download.asp sådan ud:

<%
' Sæt filnavnet i cookien:
Response.Cookies("data")("fil") = Request.Querystring("fil")

' Inkluder beskyttelses-siden, som kan rettes til at kontrollere flere betingelse:
%>

<!-- #include file="protect.asp" -->

<%
' Brugeren er logget ind -> Download fil:
Response.AddHeader "Refresh", "0;URL=filer/" & Request.Querystring("fil")
%>
Avatar billede thesurfer Nybegynder
14. februar 2004 - 16:32 #48
Er du der? :)
Avatar billede noobie Nybegynder
14. februar 2004 - 16:36 #49
ja
Avatar billede noobie Nybegynder
14. februar 2004 - 16:36 #50
Det virker.... Vil du have dine point.. I så fald må jeg bede om et svar ;-)
Avatar billede thesurfer Nybegynder
14. februar 2004 - 16:41 #51
OK, Her er et svar :)
Avatar billede thesurfer Nybegynder
14. februar 2004 - 17:11 #52
Takker for points! :-)
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