41288
[ドラッグ&ドロップされたファイルをサーバにアップロードするには?](https://ja.stackoverflow.com/questions/41102/%E3%83%89%E3%83%A9%E3%83%83%E3%82%B0%E3%83%89%E3%83%AD%E3%83%83%E3%83%97%E3%81%95%E3%82%8C%E3%81%9F%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E3%82%B5%E3%83%BC%E3%83%90%E3%81%AB%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF)  
の続きです。

ご回答を得まして、ドラッグ&ドロップでファイルをアップロードすることはできました。  
ただ、複数ファイルのアップロード方法が分かりません。

```

    my $q = new CGI;
    my @fps = $q->upload('file');
    my @fnames = $q->param('file');
    my $idx = 0;
    foreach my $fname(@fnames){
        $fname = basename($fname);
        copy($fps[$idx], "./test/$fname");
        $idx++;
    }
    
```

とか書いてみたのですが、一つしかアップロードされず。

なお、前提条件として、<input type = "file" multiple
/>を使って、ファイルダイアログで選択した複数ファイルのアップロードはできています。
CC BY-SA 3.0
2018-01-28T02:18:13.910
41253
2018-01-29T07:52:41.693
2020-06-17T08:14:45.997
-1
9674
question
javascript perl
ドラッグ&ドロップで複数ファイルをアップロードするには?
e.dataTransfer.files は配列なので。

```

            function onDrop(e) {
                e.stopPropagation();
                e.preventDefault();
    
                var files = e.dataTransfer.files;
    
                for(var i= 0;i < files.length;i++)
                {
                    uploadFile(files[i]);
                }
    
    //            uploadFile(files[0]);
            }
    
```
CC BY-SA 3.0
2018-01-29T07:52:41.693
41288
2018-01-29T07:52:41.693
22793
41253
answer