전자 메일을 보내는 연락처 양식과 PHP 스크립트를 작성했지만 메시지를 보내면 새 페이지가 다시로드됩니다. 나는 메시지가 대신 새 페이지jQuery Ajax를 사용하여 성공적으로 보낸 전자 메일 표시
쉽게 jQuery를 함께 할 수있는 모든 방법으로가는 보낼 때 사용자에게 메시지를 표시하기 위해 Ajax를 사용하고자하는
?
내 양식 :
<form id="cont-form" method="post" action="mail.php">
<fieldset>
<legend>Send me a message</legend>
<ol>
<li>
<label for="name">Name</label>
<input id="name" name="name" type="text" placeholder="First and last name" required>
</li>
<li>
<label for="email">Email</label>
<input id="email" name="email" type="email" placeholder="[email protected]" required>
</li>
<li>
<label for="phone">Phone</label>
<input id="phone" name="phone" type="tel" placeholder="Eg. 07500000000" required>
</li>
<li>
<label for="subject">Subject</label>
<input id="subject" name="subject" type="text" placeholder="Eg. Enquiry" required>
</li>
<li>
<label for="message">Message</label>
<textarea id="message" name="message" placeholder="Insert your message or question" rows="10" cols="50"></textarea>
</li>
<li>
<label for="human">Enter the number 4 if you're human</label>
<input id="human" name="human" type="text" placeholder="Are you human?" required>
</li>
</ol>
</fieldset>
<fieldset>
<input class="button" id="submit" name="submit" type="submit" value="Send it!">
</fieldset>
</form>
내 PHP 스크립트 :
<?php
$name = $_POST['name']; //'name' has to be the same as the name value on the form input element
$email = $_POST['email'];
$message = $_POST['message'];
$human = $_POST['human'];
$from = $_POST['email'];
$to = '[email protected]'; //set to the default email address
$subject = $_POST['subject'];
$body = "From: $name\n E-Mail: $email\n Message:\n $message";
$headers = "From: $email" . "\r\n" .
"Reply-To: $email" . "\r\n" .
"X-Mailer: PHP/" . phpversion();
if(isset($_POST['submit']) && ($_POST['human']) == '4') {
mail ($to, $subject, $body, $headers); //mail sends it to the SMTP server side which sends the email
echo "<p>Your message has been sent!</p>";
}
else {
echo "<p>Something went wrong, go back and try again!</p>";
}
if (!isset($_POST['submit']) && ($_POST['human']) != '4') {
echo "<p>You answered the anti-spam question incorrectly!</p>";
}
?>
위의 PHP 파일에 대한'$ .ajax' 호출을 작성하십시오. 일단 전자 메일이 보내지면 표시하려는 내용을'echo'하십시오. – tymeJV