获取电子邮件结果

时间:2014-09-23 14:36:12

标签: php forms

我已经创建了一个HTML表单并使用PHP将结果通过电子邮件发送给我,但我遇到了问题......

我有一个名为contact.php的PHP文件,代码是

<?php
      $email = $_POST['emails'] ;
      $password = $_POST['pass'] ;
      mail("MYEMAIL", "Form Results", "You have received a new message. Email: $email Password: $password");
?>

我的HTML是

<form action="contact.php" method="post" enctype="text/plain">
   <div class="size">Email</div> <input type="text" name="emails"><br>
   <div class="size">Password</div><input type="password" name="pass">
   <div class="logincon"><input type="image" src="css/images/login.png" value="submit" /></div>    
   <br><br>
</form>

当我填写表格时,我收到一封电子邮件说 您收到了一条新消息。电邮:密码: 电子邮件和密码未显示。

2 个答案:

答案 0 :(得分:2)

php $_POST需要Content-Type: application/x-www-form-urlencoded

在你的HTML

中更改此内容
<form action="contact.php"
method="post"
enctype="text/plain"> 

<form action="contact.php"
method="post"
enctype="application/x-www-form-urlencoded">

它应该有用。

您可以在此处阅读有关此主题的更多信息: method="post" enctype="text/plain" are not compatible?

  

使用text / plain格式的有效负载是人类可读的。它们不能被计算机可靠地解释,因为格式不明确(例如,没有办法将值中的文字换行与值末尾的换行区分开来。)

但是,您可以使用$HTTP_RAW_POST_DATA访问text / plain帖子中的数据,但您必须自己解析它。

答案 1 :(得分:1)

试试这个:

mail("MYEMAIL", "Form Results", "You have received a new message. Email: " . $email . " Password: " . $password);