【问题标题】:sending html form to an email [duplicate]将html表单发送到电子邮件[重复]
【发布时间】:2017-11-30 15:13:01
【问题描述】:

是否可以发送包含要填写和提交的表格的电子邮件?收件人需要直接从电子邮件中填写表格并提交。

【问题讨论】:

  • 是的,有可能,您找到/尝试过什么吗?
  • 您可以发送 HTML 电子邮件。 HTML 可以包含一个表单。你试过了吗?
  • 我已经尝试过,但我很难收到填写在该表格上的反馈。或者更确切地说,表单不提交任何信息
  • 电子邮件中的 HTML 非常有限,出于安全考虑,大多数电子邮件提供商可能会阻止这样的设计。

标签: php html


【解决方案1】:

遗憾的是,基本答案是。虽然 HTML 电子邮件(与纯文本电子邮件相反)理论上可以包含任何 HTML 代码,但大多数电子邮件客户端(我会说“全部”但我不确定)不支持 <form> 标签。他们可能会显示表单,但表单不会按预期运行,至少不会以任何一致的方式运行。在我从许多大大小小的组织收到的两封电子邮件中,以及在我自己的编程中,我发现典型的解决方案是将电子邮件的正文(文本、图形或按钮)链接到包含表单的网页。这允许表单支持所有标准 HTML、Javascript(大多数(同样,可能是“全部”,但我不确定)电子邮件客户端不支持,加载链接文件(许多电子邮件程序默认关闭并询问)用户在显示之前避免安全问题)、CSS(大多数电子邮件程序通常支持内联 CSS,但通常不支持加载外部 CSS 文件)等,并在安全(https 协议)环境中运行。

如果表单需要以特定于电子邮件收件人的信息开始(例如,显示用户的姓名、填写的电子邮件地址等),则电子邮件中的链接应包含一个参数,该参数包含原始数据 (如果安全/欺骗不是问题)或引用包含收件人数据的数据库记录。如果安全性很重要(即,您不希望收件人能够弄乱生成的 URL/参数并可能看到另一个用户的姓名或冒充其他人),那么您可以对该信息进行编码并包含校验和或哈希值某种方式,以便随机调整参数将导致您的网络表单显示“对不起,参数不正确。联系我们或单击此处获取空白表单...”等。

【讨论】:

  • 不正确;我已经做到了。
  • @Fred-ii- 您可以使用哪些电子邮件程序?雷鸟?尤多拉? iOS 标准电子邮件? Android 标准电子邮件?
  • 我已经用 PHP 编写了这个代码。
  • @Fred-ii- PHP 生成您的 HTML。我的问题是:生成 HTML 电子邮件并发送后,如果收件人使用的是 Outlook(在本地计算机上,而不是网络邮件),他们能否在电子邮件程序中填写表单并成功提交?
  • 虽然我从未使用客户端邮件程序对其进行过测试,但我认为它是相同的,并且使用 URL 来执行表单的操作。从理论上讲,这应该与在 Gmail 上填写的表单相同,这是我前段时间测试过的。
猜你喜欢
  • 2016-05-06
  • 2015-10-23
  • 1970-01-01
  • 2014-02-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多