I made a file uploader that handles images, but it doesn't work well with files. For example: if I upload 3 xlsx/word or any files, these will have the same name for each.
My code is here:
<form>
  <input id="files" type="file" multiple="multiple">
  <div id="result"></div>
</form>
function handleFileSelect(event) {           
    if (window.File && window.FileList && window.FileReader) {
        var files = Array.from(event.target.files);
        var output = document.getElementById("result");
        output.innerHTML = '';
        console.log(files);
        for (var i = 0; i < files.length; i++) {
            var file = files[i];
            if(file.type.match('.php')){
                alert('ERROR');
                continue; 
            }             
            var picReader = new FileReader();
            picReader.addEventListener("load", function (event) {
                var picFile = event.target;
                var div = document.createElement("div");
                div.className = "col-6 col-sm-4 p-1";
                if (file.type.match('image')) {
                    div.innerHTML = "<img src='" + picFile.result + "'" + "title='" + file.name + "'/>";
                }else{
                    div.innerHTML = "<div class='upload-thumb'>" + file.name + "</div>";
                }
                output.insertBefore(div, null);
            });
            picReader.readAsDataURL(file);
        }
    } else {
        console.log("Your browser does not support File API");
    }
}
Link: https://jsfiddle.net/laszlooo/7c1Lv5x2/
Thank You!
 
    