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.

Bunu beğen
Paylaş

Yorumlar
Yorum Yaz
İsim : (*)
E-mail :
Web Adresi:
:
(*)
 
Kapat