HTML表单到PHP邮件脚本没有获得$ post数据

时间:2017-04-19 04:54:39

标签: php html email

我在使用基本邮件PHP脚本时遇到了一些麻烦。我可以收到要发送的电子邮件,但无法从html表单中获取变量。

以下是代码,任何想法?

<form action='sendmail.php' method="POST">

    <label for="name">Name</label>
    <input type="text" name="name" id="name" />

    <label for="email">Email</label>
    <input type="email" name="email" id="email" />

    <label for="email">Phone Number</label>
    <input type="number" name="number" id="number" />

    <label for="comments">Message</label>
    <textarea id="comments" name="message"></textarea>

    <input type="submit">
</form>

这是PHP文件

<?php

$name = $_POST["name"];
$email_from = $_POST["email"];
$phone = $_POST["number"];
$message = $_POST["message"];


$to      = 'sam.weinhandl@gmail.com';
$subject = 'Contact Form Message';
$message = "Name: ". $name  . "\r\nPhone: " . $phone . "\r\nMessage: " . $message;
$headers = "From: " . $email_from . "\r\n" .
    "Reply-To: " . $email_from . "\r\n" .
    'X-Mailer: PHP/' . phpversion();


mail($to, $subject, $message, $headers);
?>

4 个答案:

答案 0 :(得分:3)

您正在使用POST方法将表单数据发送到PHP。使用$_POST获取值。

$name = $_POST["name"];
$email_from = $_POST["email"];
$phone = $_POST["number"];
$message = $_POST["message"];

答案 1 :(得分:0)

发布表单时更改方法

pc += sign_ext(immed) + 1;

更改变量

<form action='sendmail.php' method="GET">

答案 2 :(得分:0)

您可以使用$ _POST或$ _REQUEST来获取值。 $ _REQUEST将是最佳选择,因为它适用于get和post方法。

$name = $_REQUEST["name"];
$email_from = $_REQUEST["email"];
$phone = $_REQUEST["number"];
$message = $_REQUEST["message"];

答案 3 :(得分:0)

你应该将你的方法改为&#39; GET&#39;。 或者你应该改变变量。 上面的答案都有效。