0byt3m1n1
Path:
C:
/
wamp64
/
www
/
id
/
upload
/
[
Home
]
File: up.php
<?php session_start(); if($_SERVER["REQUEST_METHOD"] == "POST") { $chunk = $_FILES["chunk"]["tmp_name"]; $filename = $_POST['filename']; if(!isset($_SESSION[$filename])) { $_SESSION[$filename] = tempnam(sys_get_temp_dir(), 'upl'); } $tmpfile = $_SESSION[$filename]; if(isset($chunk)) { file_put_contents($tmpfile, file_get_contents($chunk), FILE_APPEND); } else { rename($tmpfile, $filename); } exit(); } ?> <!DOCTYPE html> <html> <head> <title>Upload Files using XMLHttpRequest</title> <script src="https://code.jquery.com/jquery-3.6.0.js"></script> <script type="text/javascript"> function sendRequest() { // 1MB chunk sizes. var chunk_size = 1048570; var file = document.getElementById('file').files[0]; var filesize = file.size; var filename = file.name; var pos = 0; while(pos < filesize) { let chunk = file.slice(pos, pos+chunk_size); pos += chunk_size; var data = new FormData(); data.append('chunk', chunk); data.append('filename', filename); $.ajax({url:'<?php echo basename($_SERVER["SCRIPT_FILENAME"]);?>',type: 'post',async:false,data: data,processData: false,contentType: false}); let percentComplete = Math.round(pos * 100 / filesize); document.getElementById('progressNumber').innerHTML = (percentComplete > 100 ? 100 : percentComplete) + '%'; } $.post('<?php echo basename($_SERVER["SCRIPT_FILENAME"]);?>',{filename:filename}); } </script> </head> <body> <form> <div class="row"> <label for="file">Select a File to Upload</label><br /> <input type="file" name="file" id="file" onchange="sendRequest();"/> </div> <div id="progressNumber"></div> </form> </body> </html>