''FileBox'' Elemanı

Top  Previous  Next

FileBox elemanı, kullanıcıların lokal bilgisayardan sunucu bilgisayara dosya yüklemesini sağlamak amacıyla kullanılır.

FileBox

Kullanıcı [Yükle...] düğmesine tıkladığında bir dosya seçim diyaloğu açılır. Diyalog üzerinden bir dosya seçilip [Tamam] butonuna basıldığında dosya yüklemesi hemen başlayacaktır.

Yükleme başarılı bir şekilde tamamlandıktan sonra yüklenmiş olan dosyanın sunucu üzerindeki adı eleman değeri olarak döndürülür. Eğer herhangi bir şekilde dosya yüklemesi başarısız olursa kullanıcı açılan mesaj penceresi ile uyarılır ve boş değer döndürülür.

Not: Döndürülen değer sadece uzantısı ile beraber dosyanın adıdır. Dosyanın, sunucu üzerinde, içinde bulunduğu dizin "Sunucudaki Yükleme Yeri" özelliğinde belirtilen dizindir.

Bu eleman tek bir girdi alanı gibi çalışır. Elemanın içinde yer alan yazı kutusuna değilde elemanın kendisine bir ad verilir. Bu ad aynı zamanda sunucuya gönderilecek parametrenin adı olarak kullanılır.
 

FileBox_pe

Özellikler

İzin Verilen Dosya Uzantıları

Bu özellikte ';' karakteri ile ayrıştırarak birden fazla dosya uzantısı tanımlanırsa, tarayıcının dosya seçim diyaloğu ile seçilen dosya bu tanıma göre kontrol edilecek ve tanıma uymayan dosyaların yüklemesi engellenecektir.

Dosya Boyut Sınırı (MScript kabul eder)

Kilobayt cinsinden bir değer kabul eden bu özellik ile yüklenecek dosyaların boyutularını sınırlandırmak mümkündür. Filer bileşeninin yükleme servisi, sunucu üzerinde yükleme esnasında yüklenmekte olan byte miktarı kontrol edecek ve eğer belirtilen sınır aşılırsa yükleme işlemini durdurup oluşturulan dosyayı silecektir. Bu durumda dosya yükleme diyaloğundan FileBox elemanına yüklemesi iptal edilen dosyanın adı döndürülmez.

Sunucudaki Yükleme Yeri (MScript kabul eder)

Dosyanın sunucu bilgisayarda yükleneceği dizinin adı. Bu tanım mutlak veya web uygulaması kök dizinine göreceli olarak verilebilir. Eğer bir değer verilmez ise dosya direkt olarak web uygulaması kök dizinine yüklenir.

Geçici Dosya Yükleme

Eğer yüklenecek dosyanın geçici olması ve bir süre sonra otomatik olarak silinmesi isteniyorsa bu özelliğe
"WEB-INF-MM-INF/~tempfiles" değeri verilmelidir. MoreMotion bu dizini sürekli olarak kontrol eder ve süresi geçmiş dosyaları siler.

Ancak tek başına bu yeterli değildir. MoreMotion'in süresi geçmiş dosyaları kontrol edebilmesi için dosya adlarının ilk 14 karakterinin YYYYAAGGSSDDSS kalıbına göre düzenlenmiş olması gerekir. Bu 14 karakterde belirlenen zaman geçmiş ise dosya MoreMotion tarafından silinir.

Dosya adının bu kalıba göre düzenlemek için ise "Dosyanın sunucudaki adı" özelliğinde 2 veya 3 numaralı seçeneğin seçilmesi gerekir. Bu durumda dosyanın adı 1 saat sonra silinecek şekilde oluşturulur.

Örnekler:

documents

documents/@vof(/mor_security_userinfo_main.username)

documents/@vof(/mor_security_userinfo_main.id)

/usr/local/etc/documents

WEB-INF/MM-INF/~tempfiles

 
Dosyanın sunucudaki adı

Dosyanın sunucu üzerindeki isimlendirmesi bu özellikte yapılan seçime göre yapılır. Seçenekler:

1.Yerel dosya ile aynı olsun
Dosyanın sunucu üzerindeki adı lokal bilgisayardan seçilen dosyanın adı ile aynı olacaktır.
2.Rastgele belirlensin
Dosyanın sunucu üzerindeki adı rastgele üretilmiş olan bir isim ve ona eklenen lokal bilgisayardaki dosyanın uzantısı adına bakılmaksızın otomatik olarak belirlenecektir.
3.Rastgele belirleme + Yerel dosya adı olsun
Dosyanın sunucu üzerindeki adı otomatik olarak üretilen bir isim ve ona eklenen yerel dosya adı olarak belirlenecektir.
4.Yerel dosya adı + Rastgele belirleme olsun
Dosyanın sunucu üzerindeki adı yerel dosya adı ve ona eklenen otomatik olarak üretilen bir isim olarak belirlenecektir.
 

Dosya var ise üzerine yaz (MScript kabul eder)

Eğer yüklenecek olan dosya sunucu üzerinde mevcut ise bu özellikte belirlenen değere göre işlem yapılacaktır. Değer "True" ise mevcut dosyanın üzerine yükleme yapılacak "False" ise yükleme iptal edilecektir.

Meşgul Resmi

Kullanıcıya dosya yükleme işleminin sürmekte olduğunu gösterebilmek için, sayfaya bir "mor > Ajax > BusyImage" elemanı yerleştirilmeli ve onun HTML kimliğine verilen değer bu özelliğe yazılmalıdır. Eğer değer olarak "*" verilirse varsayılan BusyImage elemanı devreye alınacağı için ilave bir BusyImage elemanının kullanılmasına gerek kalmaz.

Dosya Seçilince Kotarıcısı ($vof() kullanılabilir)

Sayfa içinde bir Javascript fonksiyonu tanımlanır ve adı bu özellikte verilirse, tarayıcının dosya seçim diyaloğundan bir dosya seçildikten hemen sonra bu fonksiyon çağrılacak ve seçilen dosyanın adı parametre olarak geçirilecekir. Eğer fonksiyon false değeri döndürürse yükleme işlemine başlatılamayacaktır.

Dosya Seçim Sonrası Fonksiyonu : DosyaAdiKontrol

  function DosyaAdiKontrol(dosyaAdi) {

    // ...

    if (...) {

      alert("Geçersiz dosya!");

      return false;

    }

  }

Dosya Yüklenince Kotarıcısı ($vof() kullanılabilir)

Bu özellikte ise dosya yükleme işlemi başarıyla tamamlandıktan sonra çağrılması istenen bir Javascript fonksiyon adı verilebilir. Geçirilen parametre lokal dosyanın adını taşıyacaktır.

Dosya Yüklenince Kotarıcısı : ResimKaynaginiAta
 

function ResimKaynaginiAta(fbox) {

 

  document.getElementById("logo_image").src = fbox.browserFileName;

 

}

 

Doğrulama

Doğrulama hakkındaki genel açıklamalar için ana yardım dosyasındaki "Kullanıcı Girdisini Doğrulamak" bölümüne bakın.