Add upload file from url
This commit is contained in:
		
							
								
								
									
										59
									
								
								uploadUrl.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								uploadUrl.php
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,59 @@ | ||||
| <?php | ||||
|  | ||||
| error_reporting(E_ALL); | ||||
| ini_set('display_errors', TRUE); | ||||
| ini_set('display_startup_errors', TRUE); | ||||
|  | ||||
| include 'fonction.php'; | ||||
|  | ||||
| $max_size = convertToBytes('2GB'); | ||||
|  | ||||
| $root = $_SERVER["DOCUMENT_ROOT"]; | ||||
|  | ||||
| $target_dir = "$root/uploads/"; | ||||
|  | ||||
| if(! isset($_GET["url"])) { | ||||
| 	header("HTTP/1.1 400 No given url"); | ||||
| 	exit(); | ||||
| } | ||||
|  | ||||
| $url = $_GET["url"]; | ||||
|  | ||||
| $headers = get_headers($url, true); | ||||
|  | ||||
| $name = basename($url); | ||||
|  | ||||
| $size = $headers['Content-Length']; | ||||
|  | ||||
| if ((folderSize($target_dir) + $size) > $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."; | ||||
| 	} | ||||
| } | ||||
|  | ||||
| ?> | ||||
		Reference in New Issue
	
	Block a user