如何使用 SFTP 从 HTML 表单上传图片?

How to upload image from HTML form using SFTP?

我无法将图像从 HTML 表单上传到 SFTP 服务器。我正在使用 phpseclib 来实现这一点。

<?php

    include('Net/SFTP.php');

    $uploaded_file = $_FILES["my_image"]["tmp_name"];

    $sftp = new Net_SFTP('my_server', 'my_port');
    if (!$sftp->login('my_username', 'my_pass')) {
        exit('Login Failed');
    }

    $sftp->mkdir('/home/new_dir');

    $sftp->put($uploaded_file,'/home/new_dir/'.$uploaded_file, ), NET_SFTP_LOCAL_FILE);

?>

连接成功,我可以成功创建目录,因此我认为问题出在这里:

$sftp->put($uploaded_file,'/home/new_dir/'.$uploaded_file, ), NET_SFTP_LOCAL_FILE);

根据the documentation,您的论点顺序应该相反。

$sftp->put('/home/new_dir/'.$uploaded_file, $uploaded_file, NET_SFTP_LOCAL_FILE);