Bir yükleme bir görüntü / dosya sırasında javascript bildirim göstermek nasıl?

5 Cevap php

Ben resim yüklemek için kullanılan bir yükleme kutusu var. Belirli bir boyutlu görüntü yüklemek için kullanıcı kısıtlamak istiyorum. Gibi, kullanıcı izin verilen genişlik, yükseklik daha büyük bir resim yükleyebilirsiniz olamaz. Birisi böyle seçmek için çalışırsa, o zaman ben ona resmi yüklemeden önce javascript kullanarak istemci tarafında bir mesaj göstermek istiyorum.

Yani bu ilgili bazı fikir olabilir. Benim proje için aşağıdaki araçları kullanıyorum

  • Codeigniter
  • JQuery

şimdiden teşekkürler.

5 Cevap

Onun değil istedim, ama sen bunu yükledi sonra boyutlarını almak için PHP'nin getimagesize() işlevini kullanabilirsiniz 'tam olarak' ne. Çok büyük ise, bunun yerine yüklenenler klasörüne temp klasöründen kopyalayarak, ona bir hata verebilir.

StackOverflow arşivler aracılığıyla arıyor, ben JavaScript yoluyla bir çözüm bulmak için görünmüyor olabilir.

Bu, bir ActiveX denetimi veya imzalı bir Java uygulaması istemci tarafında olmak, ancak bu kullanıcı izni gerektirebilir çalışıyor olabilir.

Sen istemci tarafında yerel dosyalara erişemez. Bir görüntünün boyutunu almak için bunu bir şekilde ya da başka bir upload olacaktır. Bunun yerine sayfayı yeniden istemiyorsanız, size perde arkasında AJAX ile upload mümkün olabilir, ama bunun ölçüde bulunuyor.

EDIT: ikincisi için, this script gibi bir şey kullanabilirsiniz. Sunucu tarafında dosyasında, getimagesize() boyutu almak, sonra $_FILES dosyasını almak için kullanabilirsiniz. Boyutu geçerli ise, dosyayı kaydedin ve yükleme ile bitti. Eğer değilse, bir hata mesajı yankı ve o bunu güzelleştirmek ve görüntüleyebilir, geri arama, içinde JavaScript geçilecek.

Bu şu anda bir pratik anlamda yararlı değildir, ancak (umarım çok uzak değil) bir gelecekte böyle bir şey için HTML5 dosya API kullanabilirsiniz.

http://dev.w3.org/2006/webapi/FileAPI/

https://developer.mozilla.org/en/Using_files_from_web_applications

Onları haber değil, ama sen upload büyük dosyaları inkar edemez - böylece bant genişliği tasarrufu ve sunucuya güzel olmak:

<input type="hidden" name="MAX_FILE_SIZE" value="size-in-kb" />

than when in php going through upload, it will notice you that file wasn't even uploaded, because too big. More here: http://forums.devshed.com/php-development-5/max-upload-size-how-to-give-notice-to-user-500259.html