Viennamade: Datei aus einem Ordner löschen

Beitrag lesen

Hallo,

jetziger code:

if Request.QueryString("delete") <> "" then

<%
[VBScript]
filetodelete = Request.QueryString("BName")
const folderspec = "users"
Function ShowFolderList(folderspec,filetodelete)
   Dim fso, f, f1, fc, s
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.GetFolder(folderspec)
   Set fc = f.Files
   For Each f1 IN fc

Hier: f1 ist die aktuelle Datei der Schleife. Also ist in f1.Name der Name der Datei drinnen, den mußt Du mit filetodelete vergleichen.

s = s & f1.Name

Diese Zeile bringt Dir nichts, sie dient im MS-Beispiel nur im Anschluß die Dateistruktur des Ordners auszugeben.

if s = (Request.QueryString("BName")) then       |
  const conSourcePath = "users"                    |
  strPhysSourcePath = Server.MapPath(conSourcePath) | Datei löschen?
  fso.DeleteFile strPhysSourcePath                  |
   end if                                           |

s = s & "<BR>"
   Next
   ShowFolderList = s
End Function

end if
%>

oder hab ich jetzt beim code etwas falsch gemacht?

Ein korrektes Beispiel:
Ein Sub, welches eine Funktion "ShowFolderList" aufruft. Als Parameter werden dieser Funktion die zu löschende Datei "styleswitcher.js" und der Ordner übergeben indem sich die Datei befindet "d:\fbn".

Sub x()
d = ShowFolderList("d:\fbn", "styleswitcher.js")
End Sub

Und jetzt die Funktion:
Function ShowFolderList(folderspec, FileToDelete)
   Dim fso, f, f1, fc, s
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.GetFolder(folderspec)
   Set fc = f.Files
   For Each f1 In fc
^^^^ Durchlaufe alle Dateien im Ordner
   If f1.Name = FileToDelete Then
^^^^ Wenn aktueller Dateiname gleich Name der zu löschenden Datei
    Debug.Print f1.Name
^^^^ Drucke den Namen ins Debug-Fenster (du mußt das durch den Löschbefehl ersetzen.
   End If

Next
   ShowFolderList = s
End Function

Beste Grüße
Viennamade