【发布时间】:2009-07-21 00:43:30
【问题描述】:
是否可以通过以下方式访问我的 FTP 上的文件?
<input type="file" name="final" id="final" value="http://www.blah.com.au/artwork/<?=$OrderID?>/<?=$ItemID?>/Final/Final.pdf">;
我知道这对我特别不起作用,但是有没有办法从 FTP 获取文件,以便我可以将信息发送到下一页以使用?
【问题讨论】:
是否可以通过以下方式访问我的 FTP 上的文件?
<input type="file" name="final" id="final" value="http://www.blah.com.au/artwork/<?=$OrderID?>/<?=$ItemID?>/Final/Final.pdf">;
我知道这对我特别不起作用,但是有没有办法从 FTP 获取文件,以便我可以将信息发送到下一页以使用?
【问题讨论】:
没有办法。为什么不自己使用 PHP 从您的 FTP 或 HTTP 站点检索文件?一个简单的file_get_contents() 就足够了(是的,它适用于 FTP 和 HTTP 链接)。
$file_contents = file_get_contents('http://www.blah.com.au/artwork/'.$OrderID.'/'.$ItemID.'/Final/Final.pdf');
根据新信息,您可能希望提供一个选择框,其中包含 ftp 文件夹中的所有文件。您可以通过使用ftp_connect()、ftp_login()、ftp_nlist() 和ftp_close() 来做到这一点
<?php
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// get contents of the current directory
$contents = ftp_nlist($conn_id, ".");
// output $contents
var_dump($contents);
?>
【讨论】:
copy()。
没有。这是不可能的。文件类型输入元素用于将文件从客户端机器上传到 Web 服务器。他们无法提取远程内容。这是 HTML 标准的限制。
你想用这个来完成什么?也许还有其他解决方案。
【讨论】:
我正在自动化艺术品校对系统,但我们一直让人们选择错误的文件来上传(由于无能?)。所以我写它是为了让用户不必选择文件来附加电子邮件。
他们所要做的就是选择客户端,它会编写电子邮件并附加来自 FTP 的图像,这是艺术家将最终图像上传到的位置。
所以我只需要能够将文件直接从 FTP 附加到PHPMailer 发出的电子邮件。我看到的唯一另一种方法是将图像作为数据存储在数据库中,但我认为我不想探索该选项。
【讨论】: