jag lyckas itne få mitt upload script att hindra uppladdning av vissa filer... beroende på filändelse och storlek
storlekne förhindrar den...
tex om filen är större än 2mb får jag error medd out of memory
men om filändelsen inte stämmer så tankar den upp ivf
den returnerar också antalet uppladdade filer som 0 även om den laddat upp flera st....
<%
On Error Resume Next
Set myUpload = Server.CreateObject
"aspSmartUpload.SmartUpload")
myUpload.upload
myUpload.TotalMaxFileSize = 2000000
myUpload.AllowedFilesList = "gif,jpg,jpeg,avi,mpg,mpeg"
myUpload.DeniedFilesList = "exe,bat,asp,html"
Set ObjFolder = CreateObject("Scripting.FileSystemObject")
strPath1=Server.MapPath("/db/SeafunTeam/Foton/" & ID)
strPath2=Server.MapPath("/db/SeafunTeam/Filmklipp/" &ID)
If not ObjFolder.FolderExists(strpath2) then
ObjFolder.CreateFolder strPath2
end if
f not ObjFolder.FolderExists(strpath1) then
ObjFolder.CreateFolder strPath1
end if
I=0
For each file In myUpload.Files
If not file.IsMissing Then
If I < 3 then
Count1 = file.SaveAs(strPath1 & "\" & file.FileName)
Else
Count2 = file.SaveAs(strPath2 & "\" & file.FileName)
End if
End If
I = I + 1
ext
IntCount=Count1+Count2
If Err Then
Response.Write("<b>Error: </b>" & Err.description)
Else
Response.Write(intCount & " file(s) uploaded.")
End If
response.redirect("adminteam.asp")
%>
Jesper TMedlem sedan nov. 20017 144 inlägg Använd [kod]-taggarna!
Ta bort on error resume next till en början så kan du se om sidan genererar något felmeddelande.
nepp kör utan on error resume next och den laddar upp precis vad som helst...
<%
Set myUpload = Server.CreateObject ("aspSmartUpload.SmartUpload")
myUpload.upload
myUpload.TotalMaxFileSize = 2000000
myUpload.AllowedFilesList = "gif,jpg,jpeg,avi,mpg,mpeg"
myUpload.DeniedFilesList = "exe,bat,asp,html"
'Lägg till i databas
StrConnect="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\db\butiksinfo.mdb")
set objrs=Server.CreateObject("ADODB.recordset")
objrs.open "team", StrConnect,adopenstatic,adlockoptimistic,adcmtable
objrs.addnew
objrs("Förnamn")=myUpload.form("förnamn")
objrs("Efternamn")=myUpload.Form("efternamn")
objrs("Född")=myUpload.Form("född")
objrs("Stad")=myUpload.Form("stad")
objrs("Åkning")=myUpload.Form("åkning")
objrs("Egnaord")=myUpload.Form("egnaord")
objrs("Email")=myUpload.Form("email")
objrs("Login")=myUpload.Form("login")
objrs("Lösenord")=myUpload.Form("lösenord")
objrs.update
ObjRS.Movelast ' För att få den att plocka det senaste IDnmumret
ID=ObjRS("ID")
ObjRS.close
set objRS=nothing
Set ObjFolder = CreateObject("Scripting.FileSystemObject")
strPath1=Server.MapPath("/db/SeafunTeam/Foton/" & ID)
strPath2=Server.MapPath("/db/SeafunTeam/Filmklipp/" &ID)
If not ObjFolder.FolderExists(strpath2) then
ObjFolder.CreateFolder strPath2
end if
If not ObjFolder.FolderExists(strpath1) then
ObjFolder.CreateFolder strPath1
end if
I=0
For each file In myUpload.Files
If not file.IsMissing Then
If I < 3 then
Count1 = file.SaveAs(strPath1 & "\" & file.FileName)
Else
Count2 = file.SaveAs(strPath2 & "\" & file.FileName)
End If
End If
I = I + 1
Next
IntCount=Count1+Count2
If Err Then
Response.Write("<b>Error: </b>" & Err.description)
Else
Response.Write(intCount & " file(s) uploaded.")
End If
'response.redirect("adminteam.asp")
%>
Testa dessa: :)
mySmartUpload.TotalMaxFileSize = 200000
mySmartUpload.AllowedFilesList = "htm,txt"
*Håller tummarna*
antar du menar jag ska köra
myUpload.TotalMaxFileSize = 200000
myUpload.AllowedFilesList = "htm,txt"
eftersom mitt upload objekt heter myUpload...
tyvärr så laddar dne fortfarande upp precis allt... tex .asp och .exe
Jesper TMedlem sedan nov. 20017 144 inlägg Appropå inget:
Tänk på säkerheten när du skriver ut databaskopplingarna:
\db\butiksinfo.mdb
det har du kasnke rätt i....
lyckas fortfarande inte få mitt script att hindra uppladdning av filer med fel ändelse inte heller att skriva ut hur många filer som laddats upp... vad är fel?
så vitt jag kan se har jag följt exempel kod till punkt och pricka
solbulleMedlem sedan mars 20015 287 inlägg Iofs tror jag kanske att dessa, DeniedFilesList samt AllowedFilesList, kan "ta ut" varandra. Kanske bäst att bestämma sig för antingen det ena eller det andra.
Mao vad man får ladda upp eller vad man inte får ladda upp.
Men hur som helst måste du väl flytta om lite i din kod:
Set myUpload = Server.CreateObject ("aspSmartUpload.SmartUpload")
myUpload.TotalMaxFileSize = 2000000
myUpload.AllowedFilesList = "gif,jpg,jpeg,avi,mpg,mpeg"
'myUpload.DeniedFilesList = "exe,bat,asp,html"
myUpload.upload
självklart...
självklart så msåte ju raden... myUpload.upload
komma efter raderna där olika filer förbjuds...
nu när jag justerat det så funkar det korrekt.. error medd fås om man laddar upp ngn av de förbjudna filerna....
men...
den rapporterar fortfarande inte hur många filer som laddats upp fpr fortfarande 0 som resultat... varför?