Javascript bir görüntünün boyutunu almak nasıl?

5 Cevap php

PHP var filesize(), ne javascript hakkında?

5 Cevap

Bunu javascript bunu yapamaz.

Sen boyutu alma bir PHP işlevi uyumsuz bir mesajı göndermek ve daha sonra javascript kullanarak görüntülemek, ancak bunu yapmanın hiçbir tam JS yolu yoktur olabilir.

Yapabileceğiniz en iyi kullanıcı X bayt daha küçük görüntüler sadece kabul edilecektir anlatmaktır. Eğer php.ini tanımlanan maksimum yükleme boyutu daha küçük bir resim yükleme onu durduramaz.

Görüntüyü alın, daha sonra sunucu tarafı, PHP, boyutunu kontrol ve bu çok büyük bir hata mesajı görüntüler.


Tabii ki, AJAX kullanabilirsiniz. İsterseniz, bir AJAX this one gibi denetimini yüklemek kullanın. Kontrol hala sunucu tarafında yapılacaktır ancak sayfa daha etkileşimli ve çevik hissedeceksiniz.

Şey sunucuya gönderilmeden önce dosya boyutu almak için bir Flash Uploader kullanabilirsiniz. Örneğin (uplodify.com gibi) jquery eklentisi veya YUI Uploader. Ama her durumda POST dizi $ _FILES kontrol ederek tekrar php tarafında kontrol etmelisiniz

Yükleme başladığında, tarayıcı HTTP başlığının bir parçası olarak sunucuya dosya boyutunu göndereceğiz. Yani görüntünün daha bir kaç KB transfer edilmeden önce boyutunu kontrol ve yüklemeyi iptal edebilirsiniz. Veri transferi için kodlanabilir yana boyutu kesin değildir, bu nedenle boyutu, muhtemelen çok büyük olduğuna dikkat edin.

Hiçbir sunucu tarafında gerekli:

padding:0 ve display:"inline" ile sayfanın boş bir div Ekle (gerekli "inline" yani genişlik çöker). JQuery veya başka js çerçevesini kullanarak, div içine görüntü bırakın. div görüntüyü sığdırmak için yeniden boyutlandırmak olacaktır. jQuery görüntünün genişlik / yükseklik olan div doğru genişlik / yükseklik dönecektir.

Bu tarzda sabit bir değere ayarlanır sürece js bir genişlik / yükseklik dönmeyecektir, çünkü yalnız javascript kullanarak çalışmaz.