Question

I got a upload script from plupload and i want to edit something but i dont know how. instead of allowing only some types of files i want to restrict only some extensions like , php,exe,cmd,bat .

 var uploader = new plupload.Uploader({
     runtimes : 'html5,flash,silverlight', // Set runtimes, here it will use HTML5, if not supported will use flash, etc.
     browse_button : 'pickfiles', // The id on the select files button
     multi_selection: false, // Allow to select one file each time
     container : 'uploader', // The id of the upload form container
     max_file_size : '800kb', // Maximum file size allowed
     url : 'upload.php', // The url to the upload.php file
     flash_swf_url : 'js/plupload.flash.swf', // The url to thye flash file
     silverlight_xap_url : 'js/plupload.silverlight.xap', // The url to the silverlight file
     filters : [ {extensions : "zip,rar,jpg,gif,png,jpeg,"} ] // Filter the files that will be showed on the select files window
});

i want to change the filter to a restricion. Can any one help me please?

@Luan , I found a solution

if( invalidExtensions.indexOf(extension) >= 0 ){


      alert("the extension " + extension + " is invalid!");
      up.removeFile( files[i] );
      location.reload();

   }

Thanks

Was it helpful?

Solution

You can teste if the extension is invalid and remove the files...

var uploader = new plupload.Uploader({
     runtimes : 'html5,flash,silverlight', // Set runtimes, here it will use HTML5, if not supported will use flash, etc.
     browse_button : 'pickfiles', // The id on the select files button
     multi_selection: false, // Allow to select one file each time
     container : 'uploader', // The id of the upload form container
     max_file_size : '800kb', // Maximum file size allowed
     url : 'upload.php', // The url to the upload.php file
     flash_swf_url : 'js/plupload.flash.swf', // The url to thye flash file
     silverlight_xap_url : 'js/plupload.silverlight.xap', // The url to the silverlight file
     filters : [ {extensions : "zip,rar,jpg,gif,png,jpeg,"} ] // Filter the files that will be showed on the select files window
});

var invalidExtensions = [".php",".exe",".cmd",".bat" ];
var extension;

uploader.bind('FilesAdded', function(up, files) {

   for(var i = 0; i < files.length; i++){

       extension  = files[i].name.substr(-4).toLowerCase();

       if( invalidExtensions.indexOf(extension) >= 0 ){

          alert("the extension " + extension + " is invalid!");
          up.removeFile( files[i] );

       }

   }

});

i think will work.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top