2012-01-09 3 views
-1

잘 작동하는 문의 양식이 있습니다. 그러나 제출하기 전에 남아있는 빈 필드가 있는지 확인하려면 jQuery validation plugin을 사용하려고합니다. 그러나 플러그인을 추가 할 때 더 이상 전자 메일을받지 않습니다. 다음과 같이jQuery 유효성 검사 플러그인에서 PHP 메일 기능이 작동하지 않습니다.

코드는 다음과 같습니다

contact.html

$(document).ready(function(){ 
    $("form").validate({ 
    submitHandler: function() { 
     alert("Thank you for submitting your information."); 
     }, 
    }); 
}); 
<form class="cmxform" id="myform" method="post" action="contact.php"> 
    <fieldset> 
     <p><label for="cname">Name:</label> <input type="text" id="cname" name="name" maxlength="255" class="required" /></p> 
     <p><label for="cemail">Email:</label> <input type="text" id="cemail" name="email" maxlength="255" class="required email" /></p> 
     <p><label for="tel">Tel:</label> <input type="text" id="tel" name="tel" maxlength="15" class="required" /></p> 
     <p><label for="service">Service:</label> 
      <select name="service"> 
       <option value="option1">Option1</option> 
       <option value="option2">Option2</option> 
       <option value="option3">Option3</option> 
      </select> 
     </p> 
     <p><label for="comments">Comments:</label><textarea class="textarea" id="comments" name="comments" rows="7" cols="1"></textarea></p> 

     <input type="submit" name="submit" class="button" value="Submit" /> 
    </fieldset> 
</form> 

내부와 contact.php 내부

<?php 
if(isset($_POST['submit'])) 
{ 
$name = $_POST['name']; 
$email = $_POST['email']; 
$tel = $_POST['tel']; 
$service = $_POST['service']; 
$comments = $_POST['comments']; 

$header='From: '.$email."\r\n"; 
$header.='Content-Type: text/plain; charset=utf-8'; 

$msg='Message from: '.$name."\r\n"; 
$msg.='Email: '.$email."\r\n"; 
$msg.='Tel: '.$tel."\r\n"; 
$msg.='Interested in: '.$service."\r\n"; 
$msg.='Message: '.$comments."\r\n"; 
$msg.='Sent '.date("d/m/Y",time()); 
$msg.=utf8_decode(''); 

$to = '[email protected], [email protected], [email protected]'; 
$subject = 'Contact from website'; 

mail($to,$subject,$msg,$header); 
} 

header("Location: contact.html"); 
?> 

나는에 플러그인에 필요한 어떤 변화 모른다 PHP 메일 기능을 사용하십시오. 누군가가 한 번 살펴보고이 사실을 알 수있게 도와 주시면 감사하겠습니다. 미리 감사드립니다!

+2

'submitHandler()'에서 [something] (http://docs.jquery.com/Plugins/Validation/validate#toptions)해야합니까? – jprofitt

+0

jQuery와 PHP가 전혀 관련이 없으므로 downvoted가 된 좋은 기회입니다. 나는 당신의 콘솔 로그를 점검하여 오류가 있는지 알아볼 것입니다 - 어떤면에서는 btw가있을 것입니다. 비록 그것이 사람의 실수처럼 명백하지 않더라도 (jprofitt의 코멘트를보십시오). 그 외에도, 실제 사이트의 스크립트 태그 외부에 문서가 준비되지 않았 으면 좋겠다. –

+0

고맙다. 나는 downvote에 대해 궁금해했다. 나는 당신의 제안을 모두 살펴볼 것이다. 그리고 예, js 부분은 문서 머리 부분의 스크립트 태그 안에 있습니다. 저는 여기에 정말 빨리 입력하고있었습니다. – brunn

답변

0

확실히 PHP는 아무 관련이 없습니다. submitHandler 함수에서 form.submit();이 누락되었습니다. jprofitt와 Kai Qing에게 감사드립니다.

관련 문제