2014-01-05 96 views
0

嗨,大家好,我有一個問題,我希望你們可以幫忙,我打字的所有領域,然後按提交我只是「錯誤!」在我的屏幕上。聯繫表格提交錯誤

請參閱代碼:

HTML

<h2 class="formhead">Contact Form</h2> 
<br> 
    <form class="form" action="mail.php" method="POST"> 

    <p class="name"> 
     <input type="text" name="name" id="name" placeholder="John Doe" /> 
     <label for="name">Name</label> 
    </p> 
<br> 
    <p class="email"> 
     <input type="text" name="email" id="email" placeholder="[email protected]" /> 
     <label for="email">Email</label> 
    </p> 
<br> 
    <p class="number"> 
     <input type="text" name="number" id="number" placeholder="0774XXXXXXX" /> 
     <label for="name">Contact Number</label> 
    </p> 
<br> 
    <p class="web"> 
     <input type="text" name="web" id="web" placeholder="www.example.co.uk" /> 
     <label for="name">Website</label> 
    </p> 
<br> 
    <p class="message"> 
     <textarea name="message" id="message" placeholder="Write something to us" /> </textarea> 
    </p> 
<br> 
    <p class="submit"> 
     <input type="submit" value="Send"/> 
    </p> 
    </form> 

PHP

<?php $name = $_POST['name']; 
$email = $_POST['email']; 
$number = $_POST['number']; 
$message = $_POST['message']; 
$website = $_POST['web']; 
$formcontent="From: $name \n Contact: $number \n Website: $web \n Message: $message"; 
$recipient = "[email protected](hidden)y.co.uk"; 
$subject = "Contact Form"; 
$mailheader = "From: $email "; 
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!"); 
echo "Thank You!" . " -" . "<a href='contact.html' style='text-decoration:none;color:#ff0099;'> Return Home</a>"; 
?> 

任何幫助,將不勝感激!

感謝

山姆

+2

你得到''的錯誤,因爲這是你的郵件聲明中的「或死亡」的一部分!切換顯示實際的錯誤。 –

+0

@DigitalChris我在猜測它的'die(「Error!」);' – Scuzzy

+0

添加特定的die消息,專門用於開發。例如:die(「Error a」);死(「錯誤b」); – ilarsona

回答

3

您的腳本總是報告'Error!'因爲mail()功能總是失敗。那是因爲你使用的PHP文件某些指標不符合在表單中輸入名稱:

更改這些:

$website = $_POST['website']; 

到:

$website = $_POST['web']; 

或改變它在你的形式。

你也需要爲消息textarea的指定名稱:

<textarea name="message" id="message" placeholder="Write something to us" /> 

,如果它不能連接到郵件服務器,這可能會再次失敗。這可能是你的情況,如果SMTP被禁用。

0

按我的意見,這裏有一個更好的模具語句的例子:

<? 
$your_function or die("Error! a") // Just replace the letter a with anything. It serves as a simple link to your function that only you know. so you can go back and check it 
+0

你應該讓它作爲評論,因爲它絕對是一個評論! – Bigood

+0

依然不好......'或DIE'?你知道PHP是區分大小寫的嗎 – meda

+0

你是指死亡(「Error!$ name」)死(「Error!$ web」)等? – Metexora