Avatar billede Laitings Nybegynder
13. november 2005 - 12:49 Der er 2 kommentarer

slet fil fra disk, virker ikke.

Jeg har følgende kode som skulle slette et billede fra serverens disk:

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("billeder.mdb")

if Request("sletfilm") = "1" and Session("admin") = "1" then

   
getPicSQL = "Select * From billeder Where Varenummer='" & Request("filmID") & "'"
Set rsPic = Conn.Execute(getPicSQL)

' slet billede på disk hvis der er et billede...
if rsPic("billedenavn") <> "" then

katSQL = "Select kategorinavn From kategori Where id=" & rsPic("katID") & ""
Set rsKat = Conn.Execute(katSQL)

Set fso = Server.CreateObject("Scripting.FilesystemObject")
picPath = "\DVDsalg\Film\" & rsKat("Kategorinavn") & "\" & rsPic("billedenavn")

'Response.Write "<img src=" & server.mappath(picPath) & " width=""57"" height=""80""><br>"

set slet = fso.getfile(server.mappath(picPath))
slet.delete

Set slet= Nothing
Set fso = Nothing

end if
end if

Når scriptet bliver kørt står IE og arbejder men den kommer aldrig videre og jeg får ingen fejlmeddelelse.

Jeg kan få vist billederne uden problemer så server.mappath'en fungerer.

Hvad kan det være??

-M
Avatar billede Laitings Nybegynder
13. november 2005 - 13:02 #1
Nå jeg er nået så langt som til at det måske er fordi mine mapper er skrivebeskyttet i windows. Men når jeg vælger egenskaber for mapper og slår "skrivebeskyttet" fra, er de stadigt skrivebeskyttet når jeg vælger egenskaber igen??

Nogle forslag?
Avatar billede Slettet bruger
13. november 2005 - 18:19 #2
Du skal vel have admin-rettigheder på serveren for at det virker det med at slå "skrivebeskyttet" fra...

- Men så vidt jeg husker så skal du også skrive den fulde path i din FSO...
Som for eksempel:
picPath = "c:\DVDsalg\Film\" & rsKat("Kategorinavn") & ""
- eller hvor på serveren det nu ligger...

I øvrigt så tror jeg ikke det er så vigtigt om mappen er skrivebeskyttet eller ej. Det vigtige er om filen også er skrivebeskyttet...

Men mangler du ikke også den sætning hvor filen rent fysisk skal slettes?
Her er et eksempel på et script som sletter en fil:
<%
dim fs
Set fs=Server.CreateObject("Scripting.FileSystemObject")
fs.CreateTextFile("c:\test.txt",True)
if fs.FileExists("c:\test.txt") then
  fs.DeleteFile("c:\test.txt")
end if
set fs=nothing
%>
Mangler du ikke "fs.DeleteFile("c:\DVDsalg\Film\" & rsKat("Kategorinavn") & "")"?

\Dan
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