【问题标题】:how to send image with email form如何使用电子邮件表单发送图像
【发布时间】:2012-08-05 22:14:55
【问题描述】:

我有一个经典表单和一个上传图片输入,允许访问者输入详细信息和一张图片。

<input type="text" id="first_name" name="first_name" maxlength="50">
<input type="file" id="image" name="image">

目前我将图像存储在客户端服务器上并仅将图像 URL 发送到客户端电子邮件,但最近该文件夹达到了 10MB 的限制,无法再上传图像,并且进一步的电子邮件也无法提交。
我尝试了很长时间以某种方式将带有上传图像的表单发送到客户端电子邮件,而不将其存储在服务器端但没有成功。谷歌搜索并尝试了很多建议 - 我只能发送表格但没有附加图像。我能做些什么?

【问题讨论】:

    标签: php forms


    【解决方案1】:

    您应该能够在提交表单时使用 tmp 位置的 file_get_contents($image) 获取图像的二进制内容,然后在电子邮件中使用该数据。根据您是否使用 html 电子邮件,在电子邮件中显示的方法会有所不同。

    此链接可能会有所帮助 php: recreate and display an image from binary data

    【讨论】:

      【解决方案2】:

      如果不先将文件存储在服务器上,就无法将文件附加到电子邮件中。

      您可以考虑使用Amazon S3 等服务来托管文件。这样,您不必处理文件,仍然可以通过电子邮件发送 URL,这让每个人都更快乐。

      或者,您可以找到一个服务,例如 ImageShack,它提供了一个 API 来将图片上传到。

      祝你好运!

      【讨论】:

      • +1 感谢您的快速答复!客户担心隐私,我试图不向某些第三方支付上传服务费用...
      • 我只能说找到一个更好的服务器:/ 10MB 是非常小的空间。
      • 没有任何额外信息,我不确定。 Amazon EC2 提供一年免费的 612MB RAM 服务器(不确定有多少 gig 存储)。如果您有使用 Linux 服务器的经验,不妨试一试。
      • 谢谢!在接受之前,我会稍微打开这个话题。谢谢!我真的无法想象如何解决这个问题。
      猜你喜欢
      • 2016-02-08
      • 2016-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-15
      • 1970-01-01
      • 2012-01-04
      相关资源
      最近更新 更多