2017-09-21 30 views
2

爲什麼我按下提交後我的頁面仍然空白?

<form method="post" action="mail_handler.php"> 
 
     <div class="col-sm-7 slideanim"> 
 
     <div class="row"> 
 
     <div class="col-sm-6 form-group"> 
 
      <input class="form-control" id="name" name="name" placeholder="Naam" type="text" required> 
 
      </div> 
 
      <div class="col-sm-6 form-group"> 
 
      <input class="form-control" id="phone" name="phone" placeholder="Telefoonnummer" type="text" required> 
 
     </div> 
 
      <div class="col-sm-12 form-group"> 
 
      <input class="form-control" id="email" name="email" placeholder="Email" type="email" required> 
 
     </div> 
 
     </div> 
 
     <textarea class="form-control" id="msg" name="msg" placeholder="Bericht" rows="5"></textarea><br> 
 
     <div class="row"> 
 
     <div class="col-sm-12 form-group"> 
 
      <button class="btn btn-default pull-right" id="submit" type="submit">Verstuur</button> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    </div> 
 
</div>  
 
    </form>     

我一直在努力,使這種形式的工作,但由於某種原因,它只是不發送電子郵件,之後我按下提交按鈕也是它保持空白。我已經在我的範圍內嘗試了一些東西來解決它,它一定是一些非常明顯的東西,我會一直忽略它。 (我與Cpanel一起檢查郵件是否正在發送,所以有一個smtp服務器可用)。

<?php 
if(isset($_POST['submit'])){ 
    $name=$_POST['name']; 
    $email=$_POST['email']; 
    $phone=$_POST['phone']; 
    $msg=$_POST['msg']; 

    $to='[email protected]'; // Receiver Email ID, Replace with your email ID 
    $subject='Form Submission'; 
    $message="Name :".$name."\n"."Phone :".$phone."\n"."Wrote the following :"."\n\n".$msg; 
    $headers="From: ".$email; 

    if(mail($to, $subject, $message, $headers)){ 
     echo "<h1>Bedankt voor uw bericht!"." ".$name.", Wij nemen zo snel mogelijk contact met u op.</h1>"; 
    } 
    else{ 
     echo "Er is iets fout gegaan, probeer het alstublieft opnieuw."; 
    } 
} 

?>

+3

您的提交按鈕沒有name屬性'NAME = 「提交」' – Qirel

回答

4

你應該name屬性添加到該按鈕,以便更換

<button class="btn btn-default pull-right" id="submit" type="submit">Verstuur</button> 

通過

<button class="btn btn-default pull-right" id="submit" name="submit" type="submit">Verstuur</button>` 
+1

完美的答案..... – GYaN

+0

它的工作原理,我感到羞恥,我一開始沒有看到這一點..非常感謝! –

0

試試這個

<button class="btn btn-default pull-right" name="submit" id="submit" type="submit">Verstuur</button> 
+2

爲什麼要有人「*嘗試這個*」?你改變了什麼,爲什麼? – Qirel

+0

我只是向蒂莫西建議。他忘記在按鈕標籤內提供名稱。 – omkara

+0

感謝您使用此代碼段,這可能會提供一些有限的即時幫助。通過展示*爲什麼*這是一個很好的解決方案,並且使它對未來的讀者更有用,一個正確的解釋[將大大提高](// meta.stackexchange.com/q/114762)其長期價值其他類似的問題。請[編輯]你的答案以添加一些解釋,包括你所做的假設。 –

0
<button class="btn btn-default pull-right" id="submit" type="submit">Verstuur</button> 

你缺少屬性以及您PHP處理不在,如果真正條件得到,因爲它無法找到「提交」鍵。更改HTML按鈕這樣的:

<button class="btn btn-default pull-right" id="submit" name="submit" type="submit">Verstuur</button> 
0

可以是一個名稱=「」屬性添加到按鈕或繼電器上其他一些變種。使用!empty()再次檢查傳遞的變量是否爲空字符串。

所以更換:

if(isset($_POST['submit'])){ 

有:

if (!empty($_POST['email'])){ 

或者乾脆:

if (!empty($_POST)){ 
+0

你確定嗎? 「* Button的值不會通過POST數組傳遞*」? – Qirel

+0

@Qirel只有當你設置了attr屬性時纔會通過,但你不應該通過靜態值來傳遞,而是通過傳入的值。 – divix

+0

這更準確。只有當他們有名字時纔會發送,但是如果它們發送了它們的值,則會發送它們;-) – Qirel

相關問題