PHP File Upload using url parameters

偶尔善良 提交于 2019-12-25 03:27:39

问题


Is there a way to upload a file to server using php and the filename in a parameter (instead using a submit form), something like this:

myserver/upload.php?file=c:\example.txt

Im using a local server, so i dont have problems with filesize limit or upload function, and i have a code to upload file using a form

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html>
<body>
  <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="fileForm" enctype="multipart/form-data">
    File to upload:
    <table>
      <tr><td><input name="upfile" type="file"></td></tr>
      <tr><td><input type="submit" name="submitBtn" value="Upload"></td></tr>
    </table>  
  </form>
<?php    
if (isset($_POST['submitBtn'])){

    // Define the upload location
    $target_path = "c:\\";

    // Create the file name with path
    $target_path = $target_path . basename( $_FILES['upfile']['name']); 

    // Try to move the file from the temporay directory to the defined.
    if(move_uploaded_file($_FILES['upfile']['tmp_name'], $target_path)) {
        echo "The file ".  basename( $_FILES['upfile']['name']). 
             " has been uploaded";
    } else{
        echo "There was an error uploading the file, please try again!";
    }
}
?>
</body>  

Thanks for the help


回答1:


Image Upload Via url:
//check
$url = "http://theonlytutorials.com/wp-content/uploads/2014/05/blog-logo1.png";
$name = basename($url);
try {
    $files = file_get_contents($url);
    if ($files) {
        $stored_name = time() . $name;
        file_put_contents("assets/images/product/$stored_name", $files);
    }
}catch (Exception $e){
}



回答2:


If you're doing this localy do you have the need to use "upload" mechanisms? otherwise if you're sending something externaly you could use cURL to upload the file, and run the PHP script on the CLI, quick google: http://dtbaker.com.au/random-bits/uploading-a-file-using-curl-in-php.html




回答3:


if you want to use url to send the name of the file like below:

www.website.com/upload.php?hilton_plaza_party.jpg

There is a script to do that. Here: http://valums.com/ajax-upload/



来源:https://stackoverflow.com/questions/5060757/php-file-upload-using-url-parameters

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!