通过电子邮件发送 HTML 表单
Posted
技术标签:
【中文标题】通过电子邮件发送 HTML 表单【英文标题】:Sending HTML forms on email 【发布时间】:2016-03-10 23:04:31 【问题描述】:我正在开发一个投票网站,我需要通过电子邮件本身向用户发送投票。用户应该能够从电子邮件本身对投票进行投票,而无需离开他们的页面。
现在我正在使用 mandrill 发送电子邮件,但每当我发送包含单选按钮的邮件时;按钮没有显示在邮件中,只有邮件的文本部分仍然存在。
如何做到这一点?
现在我正在尝试通过在 mandrill 中创建模板来发送这个简单的 html 表单
<!doctype html>
<html class="no-js" lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title>Widget Test</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body style="width:900px;margin:0 auto;">
<form method="post" action="https://www.<xyx>.com/servemailpollresponse/">
<p>Will you attend?<br />
<input type="radio" name="will_attend"> Sure!<br />
<input type="radio" name="will_attend">Maybe?<br />
<input type="radio" name="will_attend">Nope.<br />
<input type="submit"></p>
</form>
</body>
</html>
【问题讨论】:
用您的代码补充您的问题。 ...只有邮件的文本部分保留。可能意味着您的邮件仅作为文本发送。 @LGSon 是的,只发送纯文本 要使您的表单正常工作,它必须以 html 格式发送。 @LGSon 我没听懂你想说什么。 【参考方案1】:...只有邮件的文本部分保留。
这可能意味着您的邮件仅作为文本发送。
当发送邮件时,可以将它们以文本或 html 形式发送,并且必须以 html 形式发送。
在Mandrill中,请求JSON中有一个“html”键需要设置,或者你可以创建一个模板并传入你需要添加的文本。
Link to API docs here
注意:正如mplungjan 所写,单选按钮需要价值
【讨论】:
【参考方案2】:为收音机增加价值。现在没有什么要发送的
像这样:
<input type="radio" name="will_attend" value="sure"> Sure!<br />
<input type="radio" name="will_attend" value="maybe">Maybe?<br />
<input type="radio" name="will_attend" value="nope">Nope.<br />
【讨论】:
那么问题出在服务器上。请在您的问题中也发布 servermailpollresponse 脚本以上是关于通过电子邮件发送 HTML 表单的主要内容,如果未能解决你的问题,请参考以下文章
通过电子邮件发送带有 PHP 和 HTML 错误消息“Cannot POST mail.php”的表单
关于如何使用从其电子表格的html表单接收的数据创建pdf并通过电子邮件发送pdf文件的Google应用程序脚本