繁体   English   中英

在PHP中发送电子邮件时删除反斜杠

[英]Remove backslashes while sending email in php

我正在尝试使用以下代码发送电子邮件

$mess00 = "Store Email: " . $storeEmail . "\r\n"; 
...         
$message = $mess00 . "<br \><br \>" . $mes1 . "<br \><br \>" . $mess0 . "<br \>" . $mess1 . "<br \>" . $mess2 . "<br \>" .  $mess3;

$message = "<html><body><p>".$message."</p></body></html>";
try {
$this->Mail($storeEmail, $subject, $message);

现在假设,如果商店名称为StackOver's Inc ,在电子邮件中,我得到StackOver\\'s Inc.如何做到这一点,以便在收到电子邮件时可以删除这些\\。

PS这些名称存储在数据库中。

发送消息之前,需要使用stripslashes()删除反斜杠。

$clean_message = stripslashes ($message);
$this->Mail($storeEmail, $subject, $clean_message);

这意味着数据库中的数据已经错误。 在插入时,您启用了magic_quotes_gpc 此功能在5.3中已弃用,而在5.4中已完全删除,但较旧的版本仍会默认启用该功能。

阅读本文,了解如果无法升级安装,如何在现有环境中禁用魔术引号。

解决上述问题后,您仍然必须修复所有受影响的数据库条目; 您可以通过加载每个记录,应用stripslashes()并再次保存来做到这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM