【问题标题】:\r\n\r\n Strings Getting Into Plain Text\r\n\r\n 字符串进入纯文本
【发布时间】:2012-07-29 04:48:40
【问题描述】:

我面临使用表单输入的问题,我需要将其作为文本电子邮件发送,然后放入数据库。

当我将它作为文本电子邮件发送时,换行符在纯文本电子邮件中显示为 \r\n\r\n,但在存储在数据库中时不会这样显示。

我正在使用 PHP/MySQL - 有什么办法可以阻止 \r\n\r\n 字符出现在发出的电子邮件中?

谢谢你, 亚历克斯

【问题讨论】:

  • 你是如何发送邮件的?使用课程或发送邮件?
  • 我只是用PHP的邮件功能
  • 你是把它们写在单引号('\r\n')还是双引号("\r\n")中?因为,如果是第一种情况,它们将按原样显示。

标签: php mysql plaintext


【解决方案1】:

以 text/html 格式发送电子邮件并使用

<p> or <br>

标签

【讨论】:

  • 我花了一段时间才明白你的意思,但是是的......它的一种解决方案是将字符串从 \r\n 替换为
  • 我不确定以 only text/html 格式发送邮件是否安全(主要是因为使用了网络邮件)。
  • @binaryLV 您是什么意思“仅因为使用过网络邮件而无法安全地以文本/html 格式发送邮件?”
  • @Genadinik,如果电子邮件仅在 text/html 中具有正文,则应在不支持 text/html 的电子邮件客户端中显示什么?它可能以纯文本形式显示 HTML 代码,对于普通用户来说,它看起来就像古老的象形文字。最好发送带有 2 个正文的电子邮件 - 一个在 text/html 中,一个在 text/plain 中。
【解决方案2】:

一个可能的原因可能是数据库清理(如 mysqli_real_escape_string)。我犯了同样的错误,系统地清理了从未传递到数据库的变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-24
    • 1970-01-01
    • 2013-11-30
    相关资源
    最近更新 更多