douchui1657
douchui1657
2015-12-25 19:16

使用FTP和php上传文件

  • upload
  • filezilla
  • php
  • ftp
  • html
已采纳

I can't Upload the file using php because i can't send the path i got from the html file to the function FTP_PUT because it only takes string "test.txt"

How Can i send the Path to this function

PHP FILE

$file = $_POST["file"];

// upload file
if (ftp_put($ftp_conn, $file, $file, FTP_BINARY))
  {
  echo "Successfully uploaded $file.";
  }
else
  {
  echo "Error uploading $file.";
  }

// close connection
ftp_close($ftp_conn);

HTML FILE

    

<div class="container">
 
          <div class="row">
            <div class="col-lg-12">
               <form class="well" action="Upload.php" method="post" >
                  <div class="form-group">
                    <label for="file">Select a file to upload</label>
                    <input type="file" name="file" id="file">

                   <!-- <p class="help-block">Only jpg,jpeg,png and gif file with maximum size of 1 MB is allowed.</p> -->
                  </div>
                  <input type="submit" class="btn btn-lg btn-primary" value="Upload">
                </form>
            </div>
          </div>
    </div> 
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答

  • duangao7133 duangao7133 6年前

    Use $_FILES["file"]["tmp_name"] instead of $_POST["file"]

    edit:

    $file = $_FILES["file"]["tmp_name"];
    $file_name = $_FILES["file"]["name"];
    
    // upload file
    if (ftp_put($ftp_conn, $file_name, $file, FTP_BINARY))
    

    or move the uploaded file first:

    $target_path = "uploads/".basename($_FILES["file"]["name"]); 
    move_uploaded_file($_FILES["file"]["tmp_name"], $target_path);
    
    点赞 评论 复制链接分享
  • dpswo40440 dpswo40440 6年前

    Check that the path is correct... I don't know your file structure so I'm guessing you need the full path, try...

     if (ftp_put($ftp_conn, getcwd().$file, $file, FTP_BINARY)
    
    点赞 评论 复制链接分享
  • dongzhaobai5982 dongzhaobai5982 6年前

    Change your form tag to :

    <form class="well" action="Upload.php" method="post"  enctype="multipart/form-data">
    

    If you don't include

    enctype="multipart/form-data"
    

    Nothing will get uploaded!

    点赞 评论 复制链接分享