FTP和PHP文件上传器,更改目录


FTP & PHP File Uploader, change directory

所以我试图使FTP PHP上传我的本地主机设置与xampp。它可以很好地从C:'xampp'htdocs'上传文件,但如果我试图从我的桌面上传文件,它不会工作。有没有办法得到"源"文件的路径,这样我就可以从其他地方上传,而不是…'htdocs'或我如何解决这个问题?

文件上传到我桌面的ftp文件夹,正如我说的,当你从C:'xampp'htdocs中选择一个文件时,效果很好。

<?php
if($_POST){
$source = basename($_FILES["source"]["name"]);
$fileType = pathinfo($source, PATHINFO_EXTENSION);
$remote_file = $source;
$ftp_server = '127.0.0.1';
$ftp_user_name = 'xxx';
$ftp_user_pass = 'xxx';
$conn_id = ftp_connect($ftp_server);

$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

if (ftp_put($conn_id, $remote_file, $source, FTP_ASCII)) {
echo "successfully uploaded $source'n";
} else {
echo "There was a problem while uploading $source'n";
}

ftp_close($conn_id);
}
?>

<!DOCTYPE html>
<html>
<body>
    <form action="upload.php" method="post" enctype="multipart/form-data">
            <input type="file" id="source" name="source"></input><br>
            <input type="submit" value="Upload file" name="submit"      id="submit"></input><br>
    </form>
</body>
</html>

您在使用name。要访问上传的文件,您需要使用tmp_name。修改$source = basename($_FILES["source"]["name"]);$source = basename($_FILES["source"]["tmp_name"]);