• 14-07-2010, 10:46:32
    #1
    Üyeliği durduruldu
    Arkadaşlar ASP nin FSO işlemleri ile bir işlem yaptırmaya çalışıyorum.

    1 db var içinde sayılar var XX/XXXXX şeklinde
    2 klasör var içinde resimler var resimlerin de dosya ismi XX_XXXXX şeklinde

    ben db deki verileri replace ettirerek falan XX/XXXXX olan sayıyı XX_XXXXX yaptırıyorum ve bir değişken içine alıyorum.

    Çünkü bu değişkenin içindeki değer, klasörün içindeki resmin dosyası oluyor. Onu bulmam gerek.

    Bulduktan sonra da (eğer değişken içindeki değer ile uyuşan dosya isminde bir resim var ise....) o resmi bu dosyaya kopyala mantığını yapmaya çalışıyorum. Kod aşağıda ;

    <%
    ....burada veritabanı bağlantısı, sQL kodu vs.var.......
    
    Dim numara,string_var,string_find,string_replace,kaynak,kontrol,ext
    ext=".jpg"
    numara= rs("kod_no")
    string_var= numara
    string_find= "/"
    string_replace="_"
    budur= Replace(string_var,string_find,string_replace)
    kaynak="markaresim/"
    hedef="resim/"
    kontrol= kaynak + budur + ext
    
    if kopyala.FileExist(kontrol) then
    set kopyala=server.createobject("scripting.filesystemobject")
    kopyala.copyfile (hedef) , (kaynak)
    
    işte sorun burada ortaya çıkıyor :
    (hedef) ve (kaynak) değişkenini kopyala.copyfile yordamında kullandıramıyorum.
    Bu değişkenleri bu yordam içinde kullanmalıyım ki dosyanın kopyalanacağı hedefi ve kaynağı belirtebileyim.

    Bunu kullanmanın bir yolu varsa arkadaşlar, lütfen benimle paylaşın bu sorunu aşmaya tam 4 gündür uğraşıyorum.
  • 14-07-2010, 13:40:56
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    FileExist ve copyfile işlemlerinde yol olarak root dan başlamalısın yada Server.Mappath kullanmalısın.

    örn : "c:\inetpub\wwwroot\"
  • 14-07-2010, 13:54:05
    #3
    Üyeliği durduruldu
    peki diyelim öyle yaptım. Onu nasıl kullanacağım? zaten sorun o değil. Sorun o path'i değişken içinde kullanarak yaptırmak.. Örnek olarak

    diyelim ki normal yolu belirttik ve dosya mevcut ve bu koşulda dosya 1 den dosya 2 ye kopyalanması lazım.. değişken adı da "resimismi" olsun...
    kopyala.copyfile "c:\inetpub\wwwroot\dosya1\resimismi" , "c:\inetpub\wwwroot\dosya2\resimismi"
    şeklinde olması gerek değil mi? ama olmuyor işte orada ya syntax da bir hata var ya da başka bişi.. "resimismi" değişkenini kopyala.copyfile içinde nasıl kullanabilirim onu soruyorum ben.
  • 14-07-2010, 15:37:34
    #4
    kopyala.copyfile "c:\inetpub\wwwroot\dosya1\"&resimismi , "c:\inetpub\wwwroot\dosya2\"&resimismi
    bu şekilde değişken olur
  • 27-07-2010, 02:39:36
    #5
    set kopyala=server.createobject("scripting.filesystemobject")
    if kopyala.FileExist(kontrol) then
    kopyala.copyfile kaynak, hedef
    else
    ....
    end if
    Bu şekilde değiştirin. Dosyanın var olup olmadığını kontrol etmek için öncelikle FileSystemObject nesnesini açmanız gerekli..

    İyi Çalışmalar...