【问题标题】:Textarea form sending all codes to email?Textarea表单将所有代码发送到电子邮件?
【发布时间】:2014-03-27 11:41:28
【问题描述】:

我的网站上有一个智能文本编辑器脚本,因此我可以通过电子邮件向用户发送有关更新的信息,并且我可以编辑文本,例如。粗体,下划线,基本上就像带有所有选项的堆栈溢出文本区域。我已经对其进行了配置,因此一旦我发送它,它就会将我在 textarea 中写的任何内容添加到电子邮件中,并将其发送给我选择的任何人。问题是电子邮件显示所有
字符吗?一半的电子邮件是脚本,看起来很不专业?这是代码,我想知道是否有办法阻止所有代码显示在电子邮件中?

<textarea name="email_body" style="width: 540px; height: 200px;" required="required">
Enter email text here...
</textarea>

 <script type="text/javascript" src="http://js.nicedit.com/nicEdit-latest.js" </script> <script type="text/javascript">
//<![CDATA[
bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
//]]>
</script>


// Let's mail all users!
$subject = $sub;
$message = "Dear $firstname 

$body


http://basecentre.co.uk, please do not reply directly to this email...!";

mail($emails, $subject, $message, "From: BaseCentre Updates<admin@basecentre.co.uk>\nX-Mailer: PHP/" . phpversion());

电子邮件发送良好,一切正常,除了显示代码而不是启动它?有任何想法吗?谢谢!

【问题讨论】:

  • 所以你基本上是想在你的 $body 上使用strip_tags()
  • 您正在使用的文本编辑器的名称是什么以及在哪个环境中(Windows/Mac/Linux 等)。
  • 我希望不在电子邮件中显示代码以供用户查看?并且编辑器被称为nicedit.com
  • 我还没下载,我用的是他们主页上的代码?
  • 或者您是否希望您的电子邮件中的 HTML 在收件人的邮件程序中实际上被视为 已解析 html?如果是这样,您需要添加一个标头,说明电子邮件的Content-typetext/html

标签: php html forms textarea


【解决方案1】:

使用 html2text(源代码;示例 HTML 到文本),在 Eclipse Public License 下获得许可。它使用 PHP 的 DOM 方法从 HTML 加载,然后遍历生成的 DOM 以提取纯文本。用法:

$text = convert_html_to_text($html);

更多信息请查看此链接

Converting HTML to plain text in PHP for e-mail

【讨论】:

    猜你喜欢
    • 2012-07-02
    • 1970-01-01
    • 2012-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-22
    • 1970-01-01
    • 2014-10-26
    相关资源
    最近更新 更多