Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中从HTML表单控件直接在FTP服务器中提交文件_Php_Html_Forms_Ftp - Fatal编程技术网

如何在PHP中从HTML表单控件直接在FTP服务器中提交文件

如何在PHP中从HTML表单控件直接在FTP服务器中提交文件,php,html,forms,ftp,Php,Html,Forms,Ftp,我想知道,是否有任何可能性,我们可以直接张贴在远程FTP服务器的文件 为了满足我的需要,我检查了支持FTP协议的html表单控件的Action属性,所以我已经尝试过了,下面是代码片段 <form id="myform" method="post" enctype="multipart/form-data" action="ftp://username:password@domainname"> <table style="border-collapse: collaps

我想知道,是否有任何可能性,我们可以直接张贴在远程FTP服务器的文件

为了满足我的需要,我检查了支持FTP协议的html表单控件的Action属性,所以我已经尝试过了,下面是代码片段

<form id="myform" method="post" enctype="multipart/form-data" action="ftp://username:password@domainname">
    <table style="border-collapse: collapse;" border="1" width="500px">
        <tbody><tr>
            <td> Upload File :</td>
            <td><input name="uploadedfile" type="file"></td>
        </tr>
        <tr>
            <td colspan="2">
             <input name="Save File" value="Save File on FTP Server" id="submit" type="submit">
            </td>
        </tr>     
    </tbody></table>
</form>

上载文件:
但是,当我上传文件并提交表单时,浏览器会对我在“操作”属性中提到的FTP进行身份验证,成功后,它会使用“文件管理器”视图在提到的域中直接重定向我,这意味着我可以看到托管在提到的FTP域中的文件和文件夹

我相信,作为形式是成功提交,然后在某处上传文件传输在FTP服务器,但在哪里,我不知道

另外,如果HTML支持FTP协议中的action属性,那么应该有某种方法将文件直接发布到FTP服务器中

期待这方面的一些指导


提前谢谢。

这是不可能的。有些浏览器支持从FTP读取。HTML表单不提供将文件发送到FTP的机制。JavaScript选项无法上载到FTP,因为FTP协议中没有绕过同源策略的机制


您需要使用HTTP将文件上传到某个地方,并使用服务器端代码进行处理。

您无法提交到ftp服务器,您必须使用php与ftp进行交互

这里有一个类似的问题

&下面是一个关于如何使用php从上传到ftp服务器的示例


你正在采取行动。您没有使用代码上载文件。如果HTML表单不提供将文件发送到FTP的机制,那么为什么允许FTP协议生效属性?form action属性中FTP协议的用途是什么?如果您计划只将文件上载到FTP,则只需提及FTP的位置作为文件的上载路径。因为规范仅说明
action
属性应包含URL。(理论上,GET表单可以将数据提交到非HTTP URL,尽管当时无法上传文件)。在那里指定FTP URL没有任何意义,HTML规范只是无法阻止您尝试射击自己的脚。@Puttaa-这没有任何意义。@Quentin,谢谢您的定向回复。所以现在我必须找到替代方案,因为我不想像在网站服务器上通过http协议传输文件,然后在FTP服务器上进一步传输,因为如果用户上传100 MB的文件,这将需要双倍的时间。有没有其他我可以做像传输字节的字节复制在服务器的临时位置,而不是等待完整的文件得到传输,然后在FTP服务器传输。