Hejsan! Ett exempel som använder den teknik jag brukar arbeta med: Halloy! Du har ju skrivit felaktigt i din programkod: Mitt förslag: Tackar för hjälpen, men tyvärr kan jag ej få det att funka. lstFiler = lstFiler & "<option value=""" & filefound.Name & ">" & filefound.Name & "</option>" & vbCrLf är fel! Skall vara: Japp, nu funkar själva fil listningen, alla filer är med i comboboxen men raderingen funkar inte, kan det vara något fel i sökvägarna? Den tar inte bort någon fil eftersom den inte vet vart filen ligger. Du anger att den skall ta bort 'path & "/" & Filnamn & i' (Vad är i för något? Ser inte varför den sitter där :)) men path har inte satts så den försöker deleta en fil i en katalog som inte finns. Försök med att efter: Tack, nu funkar det. Fick lägga till < Response.Buffer = True > för att få < response.redirect "radera.asp" > att fungera.Deleta fil
Jag listar alla bild filer i en mapp med följande:
<%
Set MyDirectory=Server.CreateObject("Scripting.FileSystemObject")
Set MyFiles=MyDirectory.GetFolder(Server.MapPath("../rimages"))
For Each filefound In MyFiles.files
Response.Write filefound.Name & ", <br>"
Next
%>
jag vill ha in hittade filnamn i en combo box för att kunna delete/ta bort vald fil, någon som vet hur man kan lösa detta?
/TomasSv: Deleta fil
<code>
<%
filnamn = request("lstFiler")
if filnamn > "" then
response.write "radera :" & filnamn
' -- kod för att radera fil
' -- ladda om sidan
response.redirect "radera.asp"
end if
Set MyDirectory=Server.CreateObject("Scripting.FileSystemObject")
Set MyFiles=MyDirectory.GetFolder(Server.MapPath("../rimages"))
For Each filefound In MyFiles.files
' --- Response.Write filefound.Name & ", <br>"
lstFiler = lstFiler & "<option value=""" & filefound.Name & ">" & filefound.Name & "</option>" & vbCrLf
Next
%>
<html>
<form method="POST" name="form1" action="radera.asp">
<select size="1" name="lstFiler" onchange="javascript:form1.submit();">
<option value="-1">-- välj filer --</option>
<%=lstFiler%>
</select>
</form>
</html>
</code>Sv: Deleta fil
Har gjort så här, verkar som alla filer ej kommer med i combo boxen och jag får följande fel:
radera :
Serverobjekt fel 'ASP 0177 : 800a0035'
Server.CreateObject misslyckades/online/a/radera.asp, rad 16 00000000
<code>
<%
filnamn = request("lstFiler")
if filnamn > "" then
response.write "radera :" & filtodelete
' -- kod för att radera fil
'Skapar fso objectet
set fso = Server.Createobject("Scripting.FileSystemObject")
'din fil
Filnamn = "filtodelete "
'deletar fil
fso.DeleteFile(path & "\" & Filnamn & i) <<< DENNA RAD
'stänger fso
set fso = nothing
' -- ladda om sidan
response.redirect "radera.asp"
end if
Set MyDirectory=Server.CreateObject("Scripting.FileSystemObject")
Set MyFiles=MyDirectory.GetFolder(Server.MapPath("../rimages"))
For Each filefound In MyFiles.files
'--- Response.Write filefound.Name & ", <br>"
lstFiler = lstFiler & "<option value=""" & filefound.Name & ">" & filefound.Name & "</option>" & vbCrLf
Next
%>
<html>
<form method="POST" name="form1" action="radera.asp">
<select size="1" name="lstFiler" onchange="javascript:form1.submit();">
<option value="-1">-- välj filer --</option>
<%=lstFiler%>
</select>
</form>
</html>
</code>Sv: Deleta fil
Filnamn = "filtodelete "
Det skall vara:
Filnamn = filtodelete
/PelleSv: Deleta fil
<code>
<%
Dim fso
Dim MyFiles
Dim filnamn
filnamn = request("lstFiler")
Set fso = Server.Createobject("Scripting.FileSystemObject")
If Len(filnamn) then
fso.DeleteFile(filnamn)
End if
%>
<html>
<form method="POST" name="form1" action="radera.asp">
<select size="1" name="lstFiler" onchange="javascript:form1.submit();">
<option value="">-- välj filer --</option>
<%
Set MyFiles = fso.GetFolder(Server.MapPath("../rimages"))
For Each filefound In MyFiles.files
Response.Write " <option value=""" & filefound.path & ">" & filefound.Name & "</option>" & vbCrLf
Next
set fso = nothing
%>
</select>
</form>
</html>
</code>Sv: Deleta fil
Har även testat Andreas förslag med samma resultat.
1. verkar som inte alla filer i mappen rimages kommer med i comdoboxen
2. följande felmeddelande kommer när man testar:
Serverobjekt fel 'ASP 0177 : 80070057'
Server.CreateObject misslyckades
/online/a/radera.asp, rad 16
00000000
Hela kodsnutten:
<code>
<%
filtodelete = request("lstFiler")
if filtodelete > "" then
response.write "radera :" & filtodelete
' -- kod för att radera fil
'Skapar fso objectet
set fso = Server.Createobject("Scripting.FileSystemObject")
'din fil
Filnamn = filtodelete
'deletar fil
fso.DeleteFile(path & "\" & Filnamn & i)
'stänger fso
set fso = nothing
' -- ladda om sidan
response.redirect "radera.asp"
end if
Set MyDirectory=Server.CreateObject("Scripting.FileSystemObject")
Set MyFiles=MyDirectory.GetFolder(Server.MapPath("../rimages"))
For Each filefound In MyFiles.files
'--- Response.Write filefound.Name & ", <br>"
lstFiler = lstFiler & "<option value=""" & filefound.Name & ">" & filefound.Name & "</option>" & vbCrLf
Next
%>
<html>
<form method="POST" name="form1" action="radera.asp">
<select size="1" name="lstFiler" onchange="javascript:form1.submit();">
<option value="-1">-- välj filer --</option>
<%=lstFiler%>
</select>
</form>
</html>
</code>Sv: Deleta fil
lstFiler = lstFiler & "<option value=""" & filefound.Name & """>" & filefound.Name & "</option>" & vbCrLf
Sen skall det tamejtusan funka.. :)Sv: Deleta fil
Koden:
<code>
<%
filtodelete = request("lstFiler")
if filtodelete > "" then
response.write "radera :" & filtodelete
' -- kod för att radera fil
'Skapar fso objectet
set fso = Server.Createobject("Scripting.FileSystemObject")
'din fil
Filnamn = filtodelete
'deletar fil
fso.DeleteFile(path & "\" & Filnamn & i) <<<Sökväg till fil, filen ligger i en mapp som heter rimages och denna fil i en katalog under
'stänger fso
set fso = nothing
' -- ladda om sidan
response.redirect "radera.asp"
end if
Set MyDirectory=Server.CreateObject("Scripting.FileSystemObject")
Set MyFiles=MyDirectory.GetFolder(Server.MapPath("rimages"))
For Each filefound In MyFiles.files
'--- Response.Write filefound.Name & ", <br>"
lstFiler = lstFiler & "<option value=""" & filefound.Name & """>" & filefound.Name & "</option>" & vbCrLf
Next
%>
<html>
<form method="POST" name="form1" action="radera.asp">
<select size="1" name="lstFiler" onchange="javascript:form1.submit();">
<option value="-1">-- välj filer --</option>
<%=lstFiler%>
</select>
</form>
</html>
</code>Sv: Deleta fil
'Skapar fso objectet
set fso = Server.Createobject("Scripting.FileSystemObject")
Lägga till:
'Din sökväg
path = Server.Mappath("rimages")Sv: Deleta fil
Här är den slutliga koden:
<code>
<%
Response.Buffer = True
filtodelete = request("lstFiler")
if filtodelete > "" then
response.write "radera :" & filtodelete
' -- kod för att radera fil
'Skapar fso objectet
set fso = Server.Createobject("Scripting.FileSystemObject")
'Din sökväg
path = Server.Mappath("../rimages")
'din fil
Filnamn = filtodelete
'deletar fil
fso.DeleteFile(path & "\" & Filnamn & i)
'stänger fso
set fso = nothing
' -- ladda om sidan
response.redirect "radera.asp"
end if
Set MyDirectory=Server.CreateObject("Scripting.FileSystemObject")
Set MyFiles=MyDirectory.GetFolder(Server.MapPath("../rimages"))
For Each filefound In MyFiles.files
'--- Response.Write filefound.Name & ", <br>"
lstFiler = lstFiler & "<option value=""" & filefound.Name & """>" & filefound.Name & "</option>" & vbCrLf
Next
%>
<html>
<form method="POST" name="form1" action="radera.asp">
<select size="1" name="lstFiler" onchange="javascript:form1.submit();">
<option value="-1">-- välj filer --</option>
<%=lstFiler%>
</select>
</form>
</html>
</code>