【问题标题】:Upload images from my server to password protected site将图像从我的服务器上传到受密码保护的站点
【发布时间】:2011-07-19 22:36:55
【问题描述】:

我正在建立一个有助于组织我的业务的网站。但我遇到了障碍。我们的网站是用 PHP 和 MySQL 编码的,就目前而言,我们的承包商可以将图像上传到我们的网站,我们的网站重新标记图片并将它们与工作订单相关联(以便以后搜索,如果需要),然后存储图像在我们的数据库中。

但是,我想做的是将图像上传到我们供应商网站上的相应工作订单。我已经联系了我们的供应商,他们不允许我们直接通过 POST 命令访问他们的服务器。所以我很好奇是否有办法让我们的图片仍然从我们的网站上传到我们供应商的网站。他们的网站受密码保护。在他们的网站上,我找到了与工作订单相关联的工作订单并手动上传图像,但我想找到一种自动执行此操作的方法。他们站点和我们站点之间的工单号是相同的。有什么想法吗?

新信息

我在下面留下的评论只是说我必须手动点击上传按钮,选择要上传的照片,然后点击“上传”来上传图片。 FTP 也是不允许的。

【问题讨论】:

  • “在他们的网站上,我找到了与工作订单相关联的工作订单并手动上传图像”但是您手动执行此操作,您将能够使用脚本执行此操作。猜猜你用的是ftp,php有全套的ftp功能
  • @dagon - 我的意思是手动不是 FTP,但他们有一个按钮,上面写着“上传图像”。我单击它并打开一个浏览器,让我浏览图片并选择要上传的图片,然后单击“上传”完成。很抱歉模棱两可。他们也不允许 ftp 连接。
  • 我对 PHP 的了解并不多,因为我才刚刚开始,但我知道某些类型的库可用于大多数语言,包括 PHP。您应该查看 cUrl 或一些网络抓取库来模拟会话/交互,就像在浏览器中一样。对 PHP 比较了解的人可能会推荐一些好的库。

标签: php mysql data-transfer image-uploading


【解决方案1】:

如果“手动”是指登录后的所有 www,您可以使用 CURL 模拟登录到他们网站的会话(访问登录页面以获取会话 cookie,然后使用该会话 cookie 发布登录数据,然后通过授权会话 cookie,您可以作为授权用户从他们的网站获取/发布您想要的任何内容)。使用 Firebug 跟踪发出的请求以及从/向其网站传递的数据。

由于使用 CURL 可能会很痛苦(它的语法远非用户友好),您可以尝试从 Zend 框架中抓取并提取 Zend_Http,这样您将拥有非常简单的语法,如果您的服务器上没有 CURL,它甚至可以在没有 CURL 的情况下工作.

【讨论】:

    【解决方案2】:

    如果他们授予您 ftp 访问权限,您可以通过这种方式以编程方式将图像传输给他们 或者如果他们有某种 api 公开方法来上传图片

    【讨论】:

    • 他们不会授予 FTP 访问权限。还有其他想法吗?谢谢。
    • 通过 curl 远程发布到他们的网站
    【解决方案3】:

    “手动上传”是指通过 FTP?你可以用 PHP 做到这一点。 Here is the documentation.

    出于安全原因,我建议您在客户端的服务器上创建一个只能访问图像目录的 FTP 用户,然后通过该帐户进行连接。

    【讨论】:

    • 请参阅上面关于无法使用 FTP 的编辑。还有其他想法吗?谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-30
    • 2011-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-14
    相关资源
    最近更新 更多