PHP表单操作和提交

时间:2014-03-04 22:23:07

标签: php forms form-submit onsubmit

我刚刚编写了我的第一个PHP代码或尝试过。一个非常简单的电子邮件提交表单。但是,它没有提交权利。任何人都可以指导我走向错误的地方吗?感谢。

以下是此.html页面上的表单代码

<form action="request-info.php" method="post" name="request-info">

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

<input name="email" type="text" value="E-mail Address">

<p>More information for</p>
<input name="family" type="radio" value="Family Member">Family
<br>
<input name="friend" type="radio" value="Friend">Friend
<br>
<input name="myself" type="radio" value="Myself">Myself
<br>
<input name="submit" type="button" value="Submit"> | <input name="reset" type="reset" value="Reset">
</form>

以下是我在操作页面上的内容。我认为这是我可能错的地方。我在这里有关于提交按钮的内容吗?

<?php

$name = $_POST['name'];
$email = $_POST['email'];
$family = $_POST['family'];
$friend = $_POST['friend'];
$myself = $_POST['myself'];
$to = "example@example.com";
$subject = "Information Request";
mail ($to, $subject, $info, "From: " . $name . $email);
echo "Your request has been sent!";

?>

由于

3 个答案:

答案 0 :(得分:1)

更改

<input name="submit" type="button" value="Submit">

<input name="submit" type="submit" value="Submit">

此外,您不需要提交值,它是可选的。

答案 1 :(得分:1)

要提交,它应该有一个输入类型提交

<input name="submit" type="button" value="Submit">

另外,为了检查邮件是否发送的php部分,你应该这样做:

if(mail ($to, $subject, $info, "From: " . $name . $email)){
  echo "Your request has been sent!";
} else {
  echo "Error";
}

答案 2 :(得分:1)

将您的输入类型更改为“提交”:

<input name="submit" type="submit" value="Submit">

然后在你的php文件中,我看到你有一个变量$info ...

mail ($to, $subject, $info, "From: " . $name . $email);

但我没有看到它实际上是在任何地方定义的。在您的邮件功能之前,请为$info提供一个值。

$info = "Hello World!";

确保将这些文件上传到服务器 - php不会在本地执行(除非你运行了localhost)。