2017-08-13 75 views
0

所以我有这样的HTML代码为我的联系方式:网页的联系表格不工作

<section id="contact-form"> 
      <form action="form.php" method="post" enctype="multipart/form-data"> 
      <div class="container"> 
      <div class="row"> 
       <div class="col-md-6 col-sm-12"> 
       <div class="block"> 
        <form> 
        <div class="form-group"> 
         <input type="text" class="form-control" placeholder="Ime" name="name"> 
        </div> 
        <div class="form-group"> 
         <input type="text" class="form-control" placeholder="Email Adresa" name="email"> 
        </div> 
        <div class="form-group"> 
         <input type="text" class="form-control" name="subject" placeholder="Predmet"> 
        </div> 
        </form> 
       </div> 
       </div> 
       <div class="col-md-6 col-sm-12"> 
       <div class="block"> 
        <form> 
        <div class="form-group-2"> 
         <textarea class="form-control" rows="3" placeholder="Poruka" name="message"></textarea> 
        </div> 
        <button class="btn btn-default" type="submit">Pošalji</button> 
        </form> 
       </div> 
       </div> 
      </div> 
      </div> 
       </form> 
       </section> 

而且我的PHP脚本是这样的:

<?php 
    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $message = $_POST['message']; 
    $from = 'From: Kontakt s web-stranice'; 
    $to = 'myEmailAddress'; 
    $subject = 'Kontakt s web-stranice '; 

    $body = "From: $name\n E-Mail: $email\n Message:\n $message"; 
?> 

<?php 
if ($_POST['submit']) { 
    if (mail ($to, $subject, $body, $from)) { 
     echo '<p>Thank you for your email!</p>'; 
    } else { 
     echo '<p>Oops! An error occurred. Try sending your message again.</p>'; 
    } 
} 
?> 

,由于某种原因,当我点击提交按钮,网页刷新,邮件不会发送到我的电子邮件。

有谁知道为什么?

+0

转储'$ _POST'并查看您是否有'提交'键。看起来不像“submit”这个名字被提交。 – user2914191

+0

你正在使用嵌套窗体,这就是为什么 –

+0

和其他东西都不会启动。 –

回答

0

您的HTML格式使用表单中的表单,因此<form>标记之外的所有内容都未被收集。所有你需要做的是有第一个<form>标签,并包裹所有的输入框和提交按钮。

注意在下面的代码中您只需要一个<form>

<section id="contact-form"> 
<form action="form.php" method="post" enctype="multipart/form-data"> 
    <div class="container"> 
     <div class="row"> 
      <div class="col-md-6 col-sm-12"> 
       <div class="block"> 

        <div class="form-group"> 
         <input type="text" class="form-control" placeholder="Ime" name="name"> 
        </div> 
        <div class="form-group"> 
         <input type="text" class="form-control" placeholder="Email Adresa" name="email"> 
        </div> 
        <div class="form-group"> 
         <input type="text" class="form-control" name="subject" placeholder="Predmet"> 
        </div> 
       </div> 
      </div> 
      <div class="col-md-6 col-sm-12"> 
       <div class="block"> 
        <div class="form-group-2"> 
         <textarea class="form-control" rows="3" placeholder="Poruka" name="message"></textarea> 
        </div> 
        <button class="btn btn-default" type="submit">Pošalji</button> 
       </div> 
      </div> 
     </div> 
    </div> 
</form> 
</section> 

你的PHP代码从外观上看是正确的,但是这样搞砸了form标签是个大问题。