Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用php中的html邮件发送带有特殊字符的联系人表单?_Php_Html - Fatal编程技术网

如何使用php中的html邮件发送带有特殊字符的联系人表单?

如何使用php中的html邮件发送带有特殊字符的联系人表单?,php,html,Php,Html,我有一份与姓名、公司名称和查询的联系表。当我在查询字段中提交带有html实体的表单时(比如或警报('Hello World!');)。它出现在邮件中,类似于,或警报(\'Hello World!\')。这里两个引号都被转义。我怎样才能删除转义斜杠 我在下面附上一个片段 //I have used htmlspecialchars() to get the html entities in mail as it is. $senderName = htmlspecialchars($_REQ

我有一份与
姓名
公司名称
查询
的联系表。当我在
查询
字段中提交带有html实体的表单时(比如
警报('Hello World!');
)。它出现在邮件中,类似于,
警报(\'Hello World!\')。这里两个引号都被转义。我怎样才能删除转义斜杠

我在下面附上一个片段

//I have used htmlspecialchars() to get the html entities in mail as it is.

$senderName  =  htmlspecialchars($_REQUEST['contactName'],ENT_QUOTES);
$senderCompany  = htmlspecialchars($_REQUEST['contactCompany'],ENT_QUOTES);
$senderEnquiry  = htmlspecialchars($_REQUEST['contactEnquiry'],ENT_QUOTES);

要么你应该将标题的内容类型设置为text/html,要么请在发布时检查值,我认为这是因为双引号和单引号的问题。 例如,请参见以下代码:-

$new = htmlspecialchars("<script>alert(\'Hello World!\');</script>", ENT_QUOTES);
echo $new; // This will print output as <script>alert(\'Hello World!\');</script>
$new=htmlspecialchars(“警报(\'Hello World!\');”,entu引号);
echo$new;//这将输出为警报(\'Hello World!\');
但如果您将代码更改为双引号,请参见以下内容:-

$new = htmlspecialchars("<script>alert(\"Hello World!\");</script>", ENT_QUOTES);
echo $new; // This will print output as <script>alert("Hello World!");</script>
$new=htmlspecialchars(“警报(\'Hello World!\”);”,ENT\U引号);
echo$new;//这将输出为警报(“Hello World!”);
所以,请检查是否有单双报价问题,而张贴


通过表单输入值

在php配置中是否启用了magic quotes?我认为应该将标题的内容类型设置为text/html