【问题标题】:Perl - How to convert HTML code text into HTML table in an e-mailPerl - 如何将 HTML 代码文本转换为电子邮件中的 HTML 表格
【发布时间】:2019-03-13 16:12:17
【问题描述】:

我的数组中有我的 html 代码

   @array //contains all HTML table code

我想发送一封电子邮件,通过该电子邮件发送此 html 代码并将其转换为应有的 HTML 表格(不仅仅是 html 代码文本)

$to = 'my@email.com';
$from = 'my@email.com';
$subject = 'Test';
@message = @array;


open(MAIL, "|/usr/sbin/sendmail -t");

# Email Header
print MAIL "To: $to\n";
print MAIL "From: $from\n";
print MAIL "Subject: $subject\n\n";
print MAIL "Content-type: text/html\n";
# Email Body
print MAIL @message;

close(MAIL);
print "Email Sent Successfully\n";


}

现在这会向我发送一封电子邮件,其中包含所有 html 代码作为代码和文本行,但是我希望它像往常一样转换为 html 表。我尝试使用 MIME,但无法正常工作。非常感谢您的帮助。

【问题讨论】:

  • “不仅仅是 HTML 代码文本”是什么意思?
  • 确保您没有对 HTML 进行 HTML 转义。否则,问题不在于您如何发送文本,而在于客户端如何根据您的标头解释正文。考虑使用Email::Stuffer 之类的模块,而不是直接发送邮件,这可以很容易地使用 html_body 指定 HTML 内容(并且默认使用 sendmail 来发送您构建的邮件)。
  • @MattJacob 我的意思是,我不仅希望显示文本,还希望显示表格。

标签: html perl


【解决方案1】:

你过早结束了标题。

你实际上有以下几点:

print MAIL "To: $to\n";
print MAIL "From: $from\n";
print MAIL "Subject: $subject\n";
print MAIL "\n";
print MAIL "Content-type: text/html\n";
print MAIL $html;

您想要以下内容:

print MAIL "To: $to\n";
print MAIL "From: $from\n";
print MAIL "Subject: $subject\n";
print MAIL "Content-type: text/html\n";
print MAIL "\n";
print MAIL $html;

【讨论】:

  • 您好,感谢您的回复。 '$html' 是关键字吗?
  • 没有。保存 HTML 文档的变量
猜你喜欢
  • 2011-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-01
  • 1970-01-01
  • 2018-12-07
相关资源
最近更新 更多