Avatar billede klinemann Nybegynder
21. marts 2007 - 20:08 Der er 21 kommentarer og
1 løsning

Slet 2 filer med fso..

hejsa, jeg bruger denne når jeg skal slette mine filer, men hvorfor sletter den kun det ene billede..

    if Request.QueryString("pic") = "delete" then
   
    Set rs12 = Conn.Execute("select billede from billede where billedeid = " & Request.QueryString("billedeid"))

    'sletter billedet fra vores folders
    set fso = createobject("scripting.filesystemobject")
    fso.DeleteFile(server.mappath("../new/realfolder/" & rs12("billede") & ""))
    set fso = Nothing   

    set fso1 = createobject("scripting.filesystemobject")
    fso1.DeleteFile(server.mappath("../new/tempfolder/" & rs12("billede") & ""))
    set fso1 = Nothing   

    Conn.Execute("delete * from billede where billedeid = " & Request.QueryString("billedeid"))
    Response.Redirect("?mode=")

    end if
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:15 #1
Prøv at se hvad den siger til denne her:

<%
if Request.QueryString("pic") = "delete" then
   
    Set rs12 = Conn.Execute("select billede from billede where billedeid = " & Request.QueryString("billedeid"))

    'sletter billedet fra vores folders
    set fso = createobject("scripting.filesystemobject")
 
    If fso.FileExists(server.mappath("../new/realfolder/" & rs12("billede") & "")) Then
      fso.DeleteFile(server.mappath("../new/realfolder/" & rs12("billede") & ""))
      Response.Write "Filen i 'realfolder' blev slettet og fundet!<br /><br />"
    End If

    If fso.FileExists(server.mappath("../new/tempfolder/" & rs12("billede") & "")) Then
      fso.DeleteFile(server.mappath("../new/tempfolder/" & rs12("billede") & ""))
      Response.Write "Filen i 'tempfolder' blev slettet og fundet!"
    End If

    Set fso = Nothing

    Conn.Execute("delete * from billede where billedeid = " & Request.QueryString("billedeid"))
    Response.Redirect("?mode=")

end if
%>
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:17 #2
Og husk selvfølgelig at slå din Response.Redirect fra, for ellers kan vi ikke få noget svar, altså sådan her:

<%
if Request.QueryString("pic") = "delete" then
   
    Set rs12 = Conn.Execute("select billede from billede where billedeid = " & Request.QueryString("billedeid"))

    'sletter billedet fra vores folders
    set fso = createobject("scripting.filesystemobject")
 
    If fso.FileExists(server.mappath("../new/realfolder/" & rs12("billede") & "")) Then
      fso.DeleteFile(server.mappath("../new/realfolder/" & rs12("billede") & ""))
      Response.Write "Filen i 'realfolder' blev fundet og slettet"
    Else
      Response.Write "Filen i 'realfolder' blev <b>IKKE</b> fundet"
    End If

    If fso.FileExists(server.mappath("../new/tempfolder/" & rs12("billede") & "")) Then
      fso.DeleteFile(server.mappath("../new/tempfolder/" & rs12("billede") & ""))
      Response.Write "Filen i 'tempfolder' blev slettet og fundet!"
    Else
      Response.Write "Filen i 'tempfolder' blev <b>IKKE</b> fundet"
    End If

    Set fso = Nothing

    Conn.Execute("delete * from billede where billedeid = " & Request.QueryString("billedeid"))
    ' Response.Redirect("?mode=")

end if
%>
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:18 #3
nu sletter den ingenting
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:19 #4
Filen i 'realfolder' blev fundet og slettetFilen i 'tempfolder' blev IKKE fundet
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:19 #5
Ok - prøv at sæt det sidste ind jeg skrev og så meld tilbage hvad den skriver!
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:21 #6
men den sletter ingenting
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:21 #7
til indlæg kl. 20:19:58 -
stadig ingenting
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:22 #8
Det er sådan set ligemeget pt., jeg vil gerne ha af vide hvad den fortæller dig for jeg har fået den til at tjekke om filen virker
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:22 #9
Den må fortælle dig noget, jeg har lavet 2 Response.Write i hver sætning. Så den burde meget gerne komme med et svar.
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:23 #10
Den skriver:

Filen i 'realfolder' blev fundet og slettet - Filen i 'tempfolder' blev IKKE fundet
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:25 #11
Hmm. Hvorfor ikke også bruge den absolutte sti i stedet for det der med at hoppe et niveau tilbage, det er sjældent den forstår det.

Du burde hellere skrive hele stien fx. sådan her:
Server.Mappath("/forrigeMappe/new/tempfolder/" & rs12("billede") & ""))
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:26 #12
det prøver jeg lige 2.sek...
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:27 #13
Men jeg synes bestemt det lugter rigtig meget hen af at filen ikke eksisterer i tempfolderen, for lige nu tjekker den om den eksisterer og tror ikke dne tager fejl.
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:32 #14
den siger:

Filen i 'realfolder' blev fundet og slettet
Filen i 'tempfolder' blev IKKE fundet

med:
<%
    if Request.QueryString("pic") = "delete" then
       
        Set rs12 = Conn.Execute("select billede from billede where billedeid = " & Request.QueryString("billedeid"))
   
        'sletter billedet fra vores folders
        set fso = createobject("scripting.filesystemobject")
     
        If fso.FileExists(server.mappath("realfolder/" & rs12("billede") & "")) Then
          fso.DeleteFile(server.mappath("realfolder/" & rs12("billede") & ""))
          Response.Write "Filen i 'realfolder' blev fundet og slettet<br>"
        Else
          Response.Write "Filen i 'realfolder' blev <b>IKKE</b> fundet<br>"
        End If
   
        If fso.FileExists(server.mappath("tempfolder/" & rs12("billede") & "")) Then
          fso.DeleteFile(server.mappath("tempfolder/" & rs12("billede") & ""))
          Response.Write "Filen i 'tempfolder' blev slettet og fundet!"
        Else
          Response.Write "Filen i 'tempfolder' blev <b>IKKE</b> fundet"
        End If
   
        Set fso = Nothing
   
        Conn.Execute("delete * from billede where billedeid = " & Request.QueryString("billedeid"))
        ' Response.Redirect("?mode=")
   
    end if
   
    %>
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:34 #15
kan det have noget at gøre med delete funktionen i databasen ligger for sig selv og at den delete'er database inputten før den får hentet filnavnet ud..
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:35 #16
Nej, slet ikke. Den henter jo fint filnavnet til den første slet funktion til FSO objektet. er det den hele sti? Det synes jeg bestemt ikke det ligner, for før gik du også hen i anden mappe der hedder 'new' - men du burde nok kontrollere om filen eksisterer.

Eller evt. udskrive stien sådan her:
Response.Write Server.Mappath("tempfolder/" & rs12("billede") & ""))
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:37 #17
jeg har flyttet det hele ind i en mappe for sig selv med undermapperne "tempfolder" & "newfolder".

når jeg bytter om på if-sætningerne så tempfolder står øverst siger den at den ikke kan finde filen i realfolder...
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:38 #18
Hmm - så prøver vi noget andet :-)

<%
if Request.QueryString("pic") = "delete" then
   
    Set rs12 = Conn.Execute("select billede from billede where billedeid = " & Request.QueryString("billedeid"))

    ' Definerer billede
    strBillede = rs12("billede")

    'sletter billedet fra vores folders
    set fso = createobject("scripting.filesystemobject")
 
    If fso.FileExists(server.mappath("../new/realfolder/" & strBillede & "")) Then
      fso.DeleteFile(server.mappath("../new/realfolder/" & strBillede & ""))
      Response.Write "Filen i 'realfolder' blev fundet og slettet<br />"
    Else
      Response.Write "Filen i 'realfolder' blev <b>IKKE</b> fundet<br />"
    End If

    If fso.FileExists(server.mappath("../new/tempfolder/" & strBillede & "")) Then
      fso.DeleteFile(server.mappath("../new/tempfolder/" & strBillede & ""))
      Response.Write "Filen i 'tempfolder' blev slettet og fundet!"
    Else
      Response.Write "Filen i 'tempfolder' blev <b>IKKE</b> fundet"
    End If

    Set fso = Nothing

    Conn.Execute("delete * from billede where billedeid = " & Request.QueryString("billedeid"))
    ' Response.Redirect("?mode=")

end if
%>
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:39 #19
Hov, nej du har jo rettet om på mapperne:

<%
if Request.QueryString("pic") = "delete" then
   
    Set rs12 = Conn.Execute("select billede from billede where billedeid = " & Request.QueryString("billedeid"))

    ' Definerer billede
    strBillede = rs12("billede")

    'sletter billedet fra vores folders
    set fso = createobject("scripting.filesystemobject")
 
    If fso.FileExists(server.mappath("realfolder/" & strBillede & "")) Then
      fso.DeleteFile(server.mappath("realfolder/" & strBillede & ""))
      Response.Write "Filen i 'realfolder' blev fundet og slettet<br />"
    Else
      Response.Write "Filen i 'realfolder' blev <b>IKKE</b> fundet<br />"
    End If

    If fso.FileExists(server.mappath("tempfolder/" & strBillede & "")) Then
      fso.DeleteFile(server.mappath("tempfolder/" & strBillede & ""))
      Response.Write "Filen i 'tempfolder' blev slettet og fundet!"
    Else
      Response.Write "Filen i 'tempfolder' blev <b>IKKE</b> fundet"
    End If

    Set fso = Nothing

    Conn.Execute("delete * from billede where billedeid = " & Request.QueryString("billedeid"))
    ' Response.Redirect("?mode=")

end if
%>
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:42 #20
nu funger det...
Avatar billede klinemann Nybegynder
21. marts 2007 - 20:42 #21
men jeg faktisk osse et andet spørgsmål ang. noget asp.image..
Avatar billede madeindk Nybegynder
21. marts 2007 - 20:43 #22
Ok, så burde du nok oprette et nyt spørgsmål så andre kan få gavn af det.

Men smider et svar her, det var godt vi fik det til at fungere :-)
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