【问题标题】:CFMail not sending to email address that has a single quote in itCFMail 未发送到包含单引号的电子邮件地址
【发布时间】:2013-08-21 00:47:36
【问题描述】:

如何使用 cfmail 将电子邮件发送到包含单引号的地址?例如:

firstname.o'flanagan@example.com

由于某种原因,无论我做什么,我都无法收到发送到该地址的电子邮件。这是我正在使用的 cfmail 标记代码。我已经测试了所有变量,它们都已定义:

<cfmail from="#getEmail.from_email#" 
        to="#email#" 
        subject="#getEmail.subject#" 
        type="HTML" 
        cc="#cc_email#" 
        bcc="#attributes.bcc_email#" 
        charset="UTF-8">

我错过了什么吗?感谢您的帮助。

【问题讨论】:

  • 不使用 ColdFusion 可以发送到那个地址吗?
  • 尝试时实际发生了什么?
  • 它是单引号,还是 Microsoft Word 将单引号转换成的愚蠢行为之一?
  • 我刚刚做了一个标签,使用 firstname.o'flanagan@example.com 作为 to 和 from 属性,在 CF10 上没有任何问题。我什至没有使用保留单引号。我会检查你的变量建立。
  • 这也可能是您邮件服务器上的约定。尝试用反斜杠转义(这是我认为的旧约定 - 大约在 1999 年)。我还会跟踪邮件服务器日志以查看它告诉您的内容,并查看它所看到的地址(也许它正在破坏它)。

标签: coldfusion cfmail


【解决方案1】:

你试过了吗

<cfmail from="#getEmail.from_email#"
 to="#preserveSingleQuotes(email)#" 
 subject="#getEmail.subject#" type="HTML" 
  cc="#cc_email#" bcc="#attributes.bcc_email#" charset="UTF-8">

使用PreserveSingleQuotes 应该允许您发送到该地址。不幸的是,在电子邮件中使用单引号是有效的。

【讨论】:

  • 是的,我做了,但仍然得到“属性的值,当前为 firstname.o'flanagan@example.com,无效。”
  • 如果我试试这个:` email = "firstname.o'flanagan@example.com"; test`它按预期工作。
  • 该死的,它怎么可能对你有用,而对我却不行?相同的代码。可能是服务器设置?
  • 您是真的抛出 CF 错误,还是日志中的错误或未发送的电子邮件?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-18
  • 1970-01-01
  • 2012-10-02
  • 2017-01-30
  • 2014-07-20
  • 1970-01-01
相关资源
最近更新 更多