联系表格不发送表格值

时间:2016-04-16 08:06:20

标签: javascript php jquery

我正在使用来自codrops的升级版stepsForm.js。无论如何,联系表格都会发送电子邮件,但输入中没有任何值,即$_POST['email']。 PHP ......

<?php

$field_email = $_POST['email'];
$field_name = $_POST['name'];
$field_residence = $_POST['residence'];
$field_profession = $_POST['profession'];
$field_club = $_POST['fave_club'];
$field_message = $_POST['message'];


$mail_to = 'idwapro2@gmail.com';
$subject = 'Message from vidz.dundaah visitor '.$field_name;

$body_message = 'E-mail: '."\n".$field_email."\n\n";
$body_message .= 'Name: '."\n".$field_name."\n\n";
$body_message .= 'Residence: '."\n".$field_residence."\n\n";
$body_message .= 'Profession: '."\n".$field_profession."\n\n";
$body_message .= 'Fave_club: '."\n".$field_club."\n\n";
$body_message .= 'Message: '."\n".$field_message;

$headers = 'From: '.$field_name."\r\n";
$headers .= 'Reply-To: '.$field_email."\r\n";

$mail_status = mail($mail_to, $subject, $body_message, $headers);

?>
	<script type="text/javascript">
		window.location = '../contact.html';
	</script>
<?php

?>

HTML表单...和js文件stepsForm.js和css文件stepsForm.css

<section class="cool_form">
  <form action="css/contactForm.php" id="theForm" class="simform" autocomplete="off">
    <div class="simform-inner">
      <ol class="questions">
        <li>
          <span><label for="q1">What's your email?</label></span>
          <input id="q1" name="email" type="email" spellcheck="false" />
        </li>
        <li>
          <span><label for="q2">What's your name?</label></span>
          <input id="q2" name="name" type="text" spellcheck="false" />
        </li>
        <li>
          <span><label for="q3">Where do you live?</label></span>
          <input id="q3" name="residence" type="text" spellcheck="false" />
        </li>
        <li>
          <span><label for="q4">What do you do?</label></span>
          <input id="q4" name="profession" type="text" spellcheck="false" />
        </li>
        <li>
          <span><label for="q5">Favourite club?</label></span>
          <input id="q5" name="fave_club" type="text" spellcheck="false" />
        </li>
        <li>
          <span><label for="q6">Tell us something...</label></span>
          <input id="q6" name="message" type="text" spellcheck="false" />
        </li>
      </ol>
      <button class="submit" type="submit">Send answers</button>
      <div class="controls">
        <button class="previous"></button>
        <button class="next"></button>
        <div class="progress"></div>
        <span class="number">
								<span class="number-current"></span>
        <span class="number-total"></span>
        </span>
        <span class="error-message"></span>
      </div>
    </div>
    <span class="final-message"></span>
  </form>
</section>

基本上得到“电子邮件:空白”,“姓名:空白......”等等,谢谢!

2 个答案:

答案 0 :(得分:5)

您需要将method="post"添加到HTML <form>标记中。除非您指定使用不同的HTTP请求方法,否则表单将默认为$_GET。如果您在提交现有表单后查看地址栏,则可能会在网址中看到所有提交的参数。

以下是<form>标记的外观:

<form action="css/contactForm.php" id="theForm" class="simform" autocomplete="off" method="post">

答案 1 :(得分:2)

使用值为method的表单的post属性,如

<form method="post" ......