webForumDet fria alternativet

Ladda upp dokument

ASP

2 svar · 258 visningar · startad av henkepenka

Medlem sedan sep. 2002125 inlägg
Frågan#1

Tjena!

På en sajt vill jag ladda upp dokument i formen .doc, .txt, .pdf.
Detta fungerar perfekt med den kod jag har så länge filen är mindre än 200 kb. Blir filen 201 kb så fungerar det inte. Jag blir tokig!

Jag kan inte förstå vad som är fel då jag satt gränsen för storleken på 1 Mb.

Jag bifogar koden så kan ni väl kolla och se ifall jag glömt något. Så här ser förresten felmeddelandet ut:

Request object error 'ASP 0104 : 80004005'

Operation not Allowed

/admin/nyheter.asp, line 72

Här kommer koden:

<%If Request.Querystring("action")= "picin" Then

byteCount = Request.TotalBytes
RequestBin = Request.BinaryRead(byteCount)     [B]<--Rad 72[/B]
Set UploadRequest = CreateObject("Scripting.Dictionary")

BuildUploadRequest RequestBin

contentType   = UploadRequest.Item("fil").Item("ContentType")
filepathname  = UploadRequest.Item("fil").Item("FileName")
filename         = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
value              = UploadRequest.Item("fil").Item("Value")
dokumentet                  = filename 

' hämtar filextension 
'extension = right(dokumentet,len(dokumentet) - instr(dokumentet,".") +1)

Filen = dokumentet

' bygger ihop det nya filnamnet 
newfilename = Filen

Make_upload = False
Filetype           = lCase(right(Filename, len(Filename)-instrRev(Filename,".")))
Select Case Filetype
    Case "doc"
    Make_upload = True
    Case "txt"
    Make_upload = True
    Case "pdf"
    Make_upload = True
End Select

If Make_upload = True Then

If (byteCount / 10000) > 100 then 
  Session("mess") = "Filen får max vara <b>1000 kb</b>. <br>Din fil var <b>" & Round(byteCount / 1000,1) & "</b> kb!"
  Response.Redirect "nyheter.asp?do=newnews2&nyhetId=" & Request.QueryString("nyhetId")
Else

Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")

pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
Set MyFile = ScriptObject.CreateTextFile(Server.mappath("/dokument/" & newfilename))

For i = 1 to LenB(value)
   MyFile.Write chr(AscB(MidB(value,i,1)))
Next

MyFile.Close 

	Set RecSet = Server.CreateObject("ADODB.Recordset")
	SQL = "Select * From nyheter Where nyhetId =" & Request.QueryString("nyhetId")
	RecSet.Open SQL, Allman, 3, 3
	
	RecSet("nyhetLank") = newfilename
	
	RecSet.Update
	RecSet.close : set RecSet = nothing
	
  Response.Redirect "nyheter.asp"
%>

<!--#Include file="inc/function.asp"-->

<%End If
Else
  Session("mess") = "<b>" & extension & "</b> är inte tillåten. <br>Endast <b>.doc</b>, <b>.txt</b> och <b>.pdf</b> är tillåtna."
  Response.Redirect "nyheter.asp?do=newnews2&nyhetId=" & Request.QueryString("nyhetId")
End If
End If%>
Medlem sedan juni 200032 967 inlägg
Medlem sedan sep. 2002125 inlägg
#3

Tack för hjälpen och sorry att jag inte sökt bättre i forumet innan jag postade detta inlägg!

Tack igen!

272 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
141 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)