当使用POST方法时,PHP EMAIL Generation不起作用

问题描述:

我已经创建了一个页面,它将根据发送到该页面的数据接收3个变量并发送电子邮件。但是当我从表单发送数据时,使用POST时会出现HTTP ERROR 500。 当使用GET方法时以及在URL中发送数据时,相同的代码正在工作。什么可能是错误?当使用POST方法时,PHP EMAIL Generation不起作用

<!doctype html> 
<html> 
<head> 
<title>MAIL</title> 
<meta charset="utf-8" /> 
<meta http-equiv="Content-type" content="text/html; charset=utf-8" /> 
<meta name="viewport" content="width=device-width, initial-scale=1" /> 
</head> 
<body> 
<div> 
<?php 


$emailTo=$_POST['to_address']; 
$subject=$_POST['subject']; 
$body="$_POST['body']; 
$headers="From: [email protected]"; 

if (mail($emailTo, $subject, $body, $headers)) { 

echo "Mail sent successfully!"; 

} else { 

echo "Mail not sent!"; 

} 


?> 
</div> 
</body> 
</html> 

你在你的代码一个错字固定 关闭双引号这一行:。

$body="$_POST['body'];

500表示内部服务器错误。大多数情况下源代码存在错误。

开关

$body="$_POST['body']; 

$body=$_POST['body']; 

你应该真的逃不出你的邮件功能参数。看看这个答案:

escape mail fucntion

你在这里有一个错字 - > $身体=“$ _ POST [ '身体'];/*双引号没有关闭*/ 加:你应该真的检查POST数据和消毒,因为它不是在所有

+0

代码是否运行正常THANK YOU SO很多 如何保护代码?任何示例? 对不起。我是新手。 –

+0

你有很多这方面的帖子,从[SO - question]开始(http://*.com/questions/18431250/how-to-secure-a-form-which-sends-out-emails) - >请阅读更多的搜索后:)并接受两个答案中的一个也请,它会被关闭 – OldPadawan