2016-08-05 86 views
0

我查了一些關於這個問題的其他問題,他們都沒有類似於我的代碼。 這是我用PHP代碼塊不發送郵件

<?php 
if (isset($_POST["submit"]) && !empty($_POST["telefon"]){ 
    $msg = "Nume: " .$_POST["nume"] ." ". $_POST["prenume"] ."\n" 
     ."Email: " .$_POST["email"] ."\n" 
     ."Telefon: " .$_POST["telefon"] ."\n" 
     ."Adresa: " .$_POST["adresa"]; 
     mail("not-gonna-show-my-mail-adress-but-its-valid", "Comanda de Magneti", $msg); 
     header("location: multumim.php"); 
} else if (isset($_POST["submit"]) && empty($_POST["telefon"])){ 
    $msg = "Nume: " .$_POST["nume"] ." ". $_POST["prenume"] ."\n" 
     ."Email: " .$_POST["email"] ."\n" 
     ."Adresa: " .$_POST["adresa"]; 
     mail("not-gonna-show-my-mail-adress-but-its-valid", "Comanda de Magneti", $msg); 
     header("location: multumim.php"); 
}else{ 
    header("location: comanda-magneti.html"); 
    exit(0); 
} 
?> 

HTML

 <form style="font-size: 1.25em; margin-left: 20px;" method="post" target="comenzi.php"> 
      <label for="nume">Nume<span style="color: red;">*</span></label> <input id="nume" class="form-control" type="text" placeholder="Nume" title="nume"> 
      <label for="prenume">Prenume<span style="color: red;">*</span></label> <input id="prenume" class="form-control" type="text" placeholder="Prenume" title="prenume"> 
      <label for="email">E-Mail</label><span style="color: red;">*</span><input id="email" class="form-control" type="email" placeholder="E-Mail" title="email"> 
      <label for="telefon">Numar Telefon</label><input id="telefon" class="form-control" type="number" placeholder="Numar Telefon" title="telefon"> 
      <label for="adresa">Adresa</label><span style="color: red;">*</span><input id="adresa" class="form-control" type="text" placeholder="Strada/Numar/Localitate/Judet" title="adresa"> <br /> 
      <input class="btn-default" type="submit" value="Comanda!"></input> 
     </form> 

基本的代碼,我有5個輸入框,一個名字,一個姓氏,一個電子郵件,一個電話號碼(其是可選的),一個用於地址。 在PHP代碼中,我創建了一個if語句,該語句在所有輸入字段完成時工作,而另一個if語句在未輸入電話號碼時有效。

表單完成後,應該將用戶發送到「Thank You」頁面,然後將郵件發送給我。當我點擊「提交」時,沒有任何反應。該頁面保持在同一個地方,表格信息無處可去。

回答

1

您的任何輸入都沒有name屬性,因此例如$_POST["telefon"]將始終爲空。

您需要:

<input name="telefon" id="telefon" class="form-control" type="number" placeholder="Numar Telefon" title="telefon"> 
     ^^^^^^^^^^^^^^ this 
// etc. 

您應該添加錯誤處理和檢查例如mail()函數的返回值,看看是在每一個階段發生。在輸入

+0

就是這樣:D你總是需要做你的輸入字段,如:' – Marcel1997

0

插入名稱=提交

<input class="btn-default" type="submit" value="Comanda!" name="submit"></input> 
+0

這仍然不起作用,我需要某種需求或包含功能嗎? – Blaze26

+0

改變目標的行動=「comenzi.php」 – Espector

0

您的表單標籤缺少action -attribute(這是形式的提交對象)。 target-屬性是打開目標網址的瀏覽器窗口。

0

郵件php代碼只適用於當您處於在線網絡服務器中時,如果您在本地服務器中不適合您的情況。

+0

這並沒有提供一個問題的答案。要批評或要求作者澄清,請在其帖子下方留言 - 您可以隨時對自己的帖子發表評論,一旦您獲得了足夠的聲譽,您就可以對任何帖子發表評論。如果您有一個相關但不同的問題,請提出一個引用此問題的新問題,如果它有助於提供上下文。 –