ASP de FSO (FileSystemObject) ile dosya silme.
ASP de dosya silme işlemi için FSO (FileSystemObject) nesnesinden yararlanırız.
Örneğin yapmış olduğunuz sitenin bir foto galerisi var diyelim ve bu foto galerideki resimler dinamik olarak site yöneticisi tarafından sitenin yönetim panelinden yükleniyor olsun . Resimlerin yüklenmesi konusuna başka bir makalede deyineceğim , şimdi ki asıl konumuz ise daha önceden yüklenmiş olan bir dosyanın Server üzerinden nasıl silineği. bu dosya resim,Word,Excel vb. de olabilir.
Önce dosya silme kodunu veriyorum :
path=Server.MapPath("yol”) à resmin yolunu bir değişkene aktarıyoruz.
Set fs=Server.CreateObject("Scripting.FileSystemObject")
if fs.FileExists(path) then à resim varmo diye kontrol ediyoruz
fs.DeleteFile(path) à ve siliyoruz
end if
Şimdiki örnek uygulamamızda bir foto galerimiz var olsun.Yapmak istediğimiz ise yönetim panelden galerimizdeki resimlerden istediğimizi silmek. Foto galerimizdeki resimlerde galeri isimli tablomuzda bulunuyor olsun. Her resmin yanındaki
sil iconuna tıklandıktan sonra ResimSil.asp sayfamızda tıklanan resmin galerideki adı gönderilecek ve gelen id ye göre resim silinecek
Resim silme iki taraflı yapılacak
1. Foto Galerimizdeki resim serverdaki galeri isimli klasörden silinecek .
2. Silinen resmin veritabanındaki bilgileri de silinecek .
Şimdi Veritabanını görelim :


Şimdi url den gelen id değerine göre önce resmin kendisini silelim sonra da veritabanındaki bilgilerini içeren satırı.
<!-- #include File="dbbag.asp"--> <%’ Veritabanı bağlantımızı açtık %>
<%
id=Request.QueryString("id") ‘ silinecek resmn id sini URL den aldık.
set rs=Server.CreateObject("Adodb.recordset")
rs.Open "Select * from galeri where id="&id&"",Baglanti,1,3 ‘ resmin bilgilerini seçtik
yol=rs("resim_yol") ‘ resmin adını aldık
path=Server.MapPath("\galeri")&"\"&yol ‘ Resmin Server üzerindeki tam yolunu belirttik.
Set fs=Server.CreateObject("Scripting.FileSystemObject") ‘ File System Nesemizi oluşturduk.
if fs.FileExists(path) then
fs.DeleteFile(path) ‘ Resmi bulunduğu klasörden sildik ..
end if
rs.close
Baglanti.Execute "delete from galeri where id="&id&"" ‘ Resmin veritabanındaki bilgilerin de sildik.
Response.Redirect("galeri.asp")
%>
Kolay Gelsin.