使用PHP格式化电子邮件?

时间:2010-07-30 15:03:33

标签: php security email

我知道可以发送支持html的电子邮件。是否也可以发送启用PHP的电子邮件?

为此计算:

  • php代码必须以纯文本形式发送
  • 只有在收件人打开电子邮件
  • 后,才能在某些服务器X上执行php代码
  • 服务器X不是收件人的计算机

如果可能,这会带来什么后果性安全问题?

3 个答案:

答案 0 :(得分:2)

您基本上是在尝试强制远程电子邮件客户端显示远程HTML页面(由PHP生成)。没有客户会这样做,因为这是一个很大的安全风险。

您可以使用AJAX,但默认情况下,所有现代电子邮件客户端都会完全阻止电子邮件中的任何Javascript。

但您可以请求远程图像。您可以动态生成它们(通过PHP处理jpg扩展并动态生成图像),但这很可能会通过任何垃圾邮件过滤器将您的电子邮件视为垃圾邮件。大多数电子邮件客户端默认会阻止远程图像,但通常会显示一个取消阻止它们的按钮(javascript脚本不会发生这种情况)。

答案 1 :(得分:1)

我认为您最好的选择是使用iFrame发送HTML,或者您可以尝试使用Ajax调用来获取要注入的HTML(使用javascript)。我认为你不能只发送嵌入在HTML中的PHP代码。

检查示例#4 http://php.net/manual/en/function.mail.php

答案 2 :(得分:0)

这不能按照我的方式进行。您无法发送PHP代码并希望它由电子邮件客户端解释。

但是,您可以在HTML电子邮件中链接到服务器上的图像。此图像可以是在您的服务器上运行的PHP脚本。但是,出于这个原因,大多数电子邮件客户端默认不显示图像。