PHP联系人表单未发送所有数据

PHP联系人表单未发送所有数据,php,forms,Php,Forms,我从一个网站上获取了下面的代码,但它似乎只发送消息,而没有发送姓名或电子邮件。谁能告诉我为什么 <?php $action=$_REQUEST['action']; if ($action=="") { ?> <form action="" method="POST" enctype="multipart/form-data"> <input type="hidden" name="action" value="submit"> Your name:

我从一个网站上获取了下面的代码,但它似乎只发送消息,而没有发送姓名或电子邮件。谁能告诉我为什么

<?php $action=$_REQUEST['action']; 
if ($action=="") { ?>

<form  action="" method="POST" enctype="multipart/form-data"> 
<input type="hidden" name="action" value="submit"> 
Your name:<br> 
<input name="name" type="text" value="" size="30"/><br> 
Your email:<br> 
<input name="email" type="text" value="" size="30"/><br> 
Your message:<br> 
<textarea name="message" rows="7" cols="30"></textarea><br> 
<input type="submit" value="Send email"/> 
</form> 

<?php 
}  
else { 
$message=$name=$_REQUEST['name']; 
$email=$_REQUEST['email']; 
$message=$_REQUEST['message']; 
if (($name=="")||($email=="")||($message=="")) 
    { 
    echo "All fields are required, please fill <a href=\"\">the form</a> again."; 
    } 
else{         
    $from="From: dG<my@email.com>\r\nReturn-path: $email"; 
    $subject="Message sent using your contact form"; 
    mail("my@email.com", $subject, $message, $from); 
    echo "Email sent!"; 
    } 
}   
?> 
更像

mail("my@email.com", $subject, $name, $email, $message, $from);
但那没用。 正如您所看到的,我对PHP了解不多,所以请尽量简单

谢谢。

mail()函数接受以下参数:

收件人、主题、消息、标题、参数

因此,要在消息中包含$name和$email变量的内容,您可能需要将它们添加到消息变量中。比如:

$message=$name$电子邮件$信息

然后,当您发送电子邮件时:

邮件(“my@email.com“,$subject,$message,$from)

$message将包括$name和$email内容

一旦你开始工作,你可能会想在姓名、电子邮件和消息之间添加一些空格

下面是完整的else块的外观:


否则{
$from=“from:dG\r\n返回路径:$email”;
$subject=“使用您的联系方式发送的邮件”;
$message=$name.$email.$message;
邮件(“my@email.com“,$subject,$message,$from);
回显“已发送电子邮件!”;
}

以下是有关mail()函数的完整文档的链接:


一旦您了解了如何实现此功能,您应该了解需要将
$name
$email
手动添加到您的
$message
中。看一看。这一行似乎毫无意义:
。另外,为什么要使用
$\u请求
?使用
$\u POST
。谢谢你。那真是一种享受。我还查看了链接,并按照您的建议添加了这些空格:$message=$name。“\r\n”$电子邮件“\r\n”$消息
mail("my@email.com", $subject, $name, $email, $message, $from);