PHP表单返回所有信息


PHP form to returning all the information

当谈到php时,我是一个完全的新手,我得到了下面的php,它会向我发送"消息"并向用户发送自动响应,以及将他们重定向到"谢谢"页面。我遇到的问题是它不会返回他们在表格上填写的用户名,有什么想法吗?

<?php
$youremail = "ally.baird81@gmail.com"; //this is where the email will be sent to
@extract($_POST);$name = filter_var($name, FILTER_SANITIZE_STRING);
$message  = filter_var($message, FILTER_SANITIZE_STRING);
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
    if (mail($youremail, 'Message from website.', $message, "From: Krew Kut Hair<$email>")) {
        $autoreply = "Thank you for enquiring at Krew Kut Hair, we will be in contact shortly";
        $subject   = "Thank you for your enquiry!";
        mail($email, $subject, $autoreply, "From: Krew Kut Hair<$email>");
    }
} else {
    echo "Please enter a valid email address";
}
header("Location: thanks.html");

假设名称在其中一个表单字段中,您应该能够检索到它。正如Barmar所说,您所要做的就是在正文或消息中的某个位置使用它。如果你不在某个地方回声,你怎么能知道这个名字不见了。试试这个:

$autoreply = "Thank you ".$name."  for ... 

如果名称仍然"丢失"-您可以尝试查看所有的post变量,如下所示:

echo "<PRE>Post Vars'n"; print_r($_POST);

如果您有一个名为"name"的输入,如:

<input type="text" name="name" value="" />

检查它是否包含数据,例如:

echo 'The value of name is ['.$name.']';

如果它包含数据,您可以在消息中使用$name变量。如果不是这样,你的HTML表单可能有问题。

<?php
$youremail = "ally.baird81@gmail.com"; //this is where the email will be sent to
@extract($_POST);$name = filter_var($name, FILTER_SANITIZE_STRING);
$message    = filter_var($message, FILTER_SANITIZE_STRING);
$content    = "<strong>Name:<strong><br />".$name."<br />";
$content   .= "<strong>Message:<strong><br />".$message."<br />";
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
    if (mail($youremail, 'Message from website.<br />', $content, "From: Krew Kut Hair<$email>")) {
        $autoreply = "Hi ".$name.". Thank you for enquiring at Krew Kut Hair, we will be in contact shortly";
        $subject   = "Thank you for your enquiry!";
        mail($email, $subject, $autoreply, "From: Krew Kut Hair<$email>");
    }
} else {
    echo "Please enter a valid email address";
}
header("Location: thanks.html");

还请阅读对您问题的评论。我强烈建议您找到其他方法,而不是使用extract()