diff --git a/index.html b/index.html index 8e0cc64..f8537dd 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,8 @@ Local Transfer -
+ +

Upload multiple files with the file dialog or by dragging and dropping images onto the dashed region

diff --git a/js/script.js b/js/script.js index 1722521..4396103 100644 --- a/js/script.js +++ b/js/script.js @@ -55,6 +55,26 @@ function handleFiles(files) { files.forEach(previewFile) } +//upload file from url +$('#url').keypress(function (e) { + if (e.which == 13) { + var url = encodeURIComponent($('#url').val()); + $.get({ + url: 'uploadUrl.php', + data: 'url=' + url, + beforeSend: function(){ + lock = 1; + }, + success: function(data, statut) { + lock = 0; + listFile(); + }, + error: error, + }); + return false; + } +}); + function uploadFile(file) { let url = 'upload.php' let formData = new FormData() diff --git a/uploadUrl.php b/uploadUrl.php new file mode 100644 index 0000000..2623c3f --- /dev/null +++ b/uploadUrl.php @@ -0,0 +1,59 @@ + $max_size) { + header("HTTP/1.1 400 " . $name . " file too large"); + exit(); +} + +if (! extension_loaded('mbstring')) { + header("HTTP/1.1 500 php module missing"); + exit(); +} + +if(! mb_check_encoding($name)) { + header("HTTP/1.1 400 Bad encode"); + exit(); +} + +$target_file = $target_dir.$name; + +// Check if file already exists +if (file_exists($target_file)) { + header("HTTP/1.1 400 This file already exists"); + echo "This file already exists."; +} +else { + if(file_put_contents($target_file, fopen($url, 'r'))) { + echo "The File ".$name." of size ".formatBytes($size)." has been uploaded."; + } else { + header("HTTP/1.1 500"); + echo "There was an error uploading your file."; + } +} + +?>