Надо устроить проверку размера загружаемого файла на сайт до его загрузки, т.е. на стороне клиента. Средствами PHP смогнула измерить его только после загрузки на сервер, но это не айс файлы могут быть и по 100мб, а надо не более например 10мб, еще могу ограничить размер загружаемого файла, но тоже надо на сервер грузить и при превышении лимита сервер отрубает загрузку. Может кто-нибудь сталкивался с аякс решением или флэш? Буду признательна если кто-нибудь поделится кодом
FILE API не предлагать
#1
17 августа 2012 в 23:52
#2
18 августа 2012 в 00:22
Флэшь загрузчики умеют это делать. В инстанте такой встроен при загрузке фоток кажись. Но он же может и файлы лить.
вот он ссылка проекта swfupload
вот он ссылка проекта swfupload
#3
18 августа 2012 в 10:11
А чем оно вас не устраивает? :)FILE API не предлагать
вот вариант реализации не на флеше
<input type="file" id="files" name="files[]" multiple /> <output id="list"></output> <script> function handleFileSelect(evt) { var files = evt.target.files; // FileList object // files is a FileList of File objects. List some properties. var output = []; for (var i = 0, f; f = files[i]; i++) { output.push('<li><strong>', escape(f.name), '</strong> (', f.type || 'n/a', ') - ', f.size, ' bytes, last modified: ', f.lastModifiedDate.toLocaleDateString(), '</li>'); } } document.getElementById('files').addEventListener('change', handleFileSelect, false); </script>
Сегодня в 18:30
#4
18 августа 2012 в 10:38
второй вариант чистый JS
function imgLoad() { var strT = new String(); document.getElementById("ShowImg").innerHTML= ""; strT = document.ModReg.file1.value; if(strT != "") { strT = "<img ;id='Sample' src='" + strT + "' width='100' height='100'></img>"; document.getElementById("ShowImg").innerHTML= strT; if(!LimitedSize()) { alert("File Size is more than 100 KB"); document.getElementById("ShowImg").innerHTML= ""; } } } function LimitedSize() { var i; var y = document.images; for (i=0;i<y.length;i++) { if((y[i].id) == 'Sample') { if(y[i].fileSize > 102400) return false; } } return true; } <INPUT
#5
18 августа 2012 в 11:00
maxisoft, вы просто душка спасибо большое!