webForumDet fria alternativet

Ta bort filer...

ASPur ASP

7 svar · 298 visningar · startad av tomas21

Medlem sedan feb. 2003130 inlägg
Frågan#1

Hej jag har tidigare idag skrivit ett inlägg angående att ladda upp filer på servern. Nu en anna fråga:

Hur tar man bort filer på servern. Det jag ska göra är att jag först laddar upp filerna till servern samt till databasen. Sen när man tex. trycker ta bort bild då ska den ta bort den från databasen samt från servern.

Medlem sedan jan. 2001373 inlägg
#2

Hej,

Du får ta bort poster i databasen på sedvanligt sätt. Sedan använda dig av FSO för att ta bort själva filen. Du måste ha något som matchar filen samt databasen också. lämpligt är att döpa filerna efter nått unikt databas nummer som ID t.ex

Dim fso, file
Set fso = CreateObject("Scripting.FileSystemObject")

Set file = fso.GetFile("D:\"& uniktfilnamn &"")

file.Delete

Mvh

Medlem sedan feb. 2003130 inlägg
#3

ok ska testa

Medlem sedan feb. 2003130 inlägg
#4

Hejsan jag har testat med följande kod:


   Set Obj = CreateObject("Scripting.FileSystemObject") 
   Obj.DeleteFile "..\bilder\" & Request.QueryString("namn") & " "

Jag får detta felmedelande:

Microsoft VBScript runtime error '800a0035'
File not found
/admin/administration.asp, line 748

Rad 748 är :
Obj.DeleteFile "..\bilder\" & Request.QueryString("namn") & " "

Medlem sedan feb. 2003130 inlägg
#5

Kom igen snälla kan någon svara....

Medlem sedan mars 20015 287 inlägg
#6

File not found!

Scriptet hittar inte filen!
Är sökvägen helt rätt?
Har du rätt namn på filen?
(Sen kan du ju iofs fimpa mellanslaget som du lägger till på slutet av filnamnet.)

En liten parentes bara. Jag tycker att det är lite vanskligt att använda sig av querystrings i ett "deletescript"

Medlem sedan juni 200032 967 inlägg
#7

tomas21 skrev:

Kom igen snälla kan någon svara....

Lite mer än 10 minuter får du nog ge det.

Nåja.

FSO brukar vilja ha en fysisk sökväg, inte en relativ. Omvandla den relativa sökvägen till fysisk med Server.Mappath().

Obj.DeleteFile Server.Mappath("..\bilder\" & Request.QueryString("namn"))
Medlem sedan apr. 20012 427 inlägg
#8

Annars kan du ju alltid kolla om filen existerar innan du raderar den.

Set fso = Server.CreateObject("Scripting.FileSystemObject")
If fso.FileExists(Server.MapPath("../bilder/" & Request.QueryString("namn"))) Then
	fso.DeleteFile(Server.MapPath("../bilder/" & Request.QueryString("namn")))
End If
Set fso = Nothing
135 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)