2014-01-05 4 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>"; 
?> 

어떤 도움이 많이 주시면 감사하겠습니다 :

코드를 참조하십시오!

감사

mail() 기능이 항상 실패하기 때문에 항상 'Error!'을보고

+2

당신은'오류'그 메일 문의 "또는 사망"일부이기 때문에!. 스위치를 눌러 실제 오류를 표시하십시오. –

+0

@DigitalChris 'die ("Error!");' – Scuzzy

+0

특별히 개발 용으로 특정 die 메시지를 추가하십시오. 예를 들면 다음과 같습니다. die ("Error a"); 죽는다 ("오류 b"); – ilarsona

답변

3

스크립트.

변경이 :

$website = $_POST['web']; 

또는 변경 :

$website = $_POST['website']; 

에 당신이 PHP 파일에 사용하고 일부 인덱스가 양식에 입력 이름이 일치하지 않기 때문 귀하의 양식.

은 또한 당신은 메시지 텍스트 영역의 이름을 지정해야합니다 : 그것은 메일 서버에 연결할 수없는 경우

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

이 다시 실패 할 수 있습니다. The 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

여전히 나쁜 .... 'OR DIE'? PHP가 대소 문자를 구별한다는 것을 알고 있습니까 – meda

+0

die ("Error! $ name") die ("Error! $ web") 등과 같은 것을 의미합니까? – Metexora