Hej mam problem chciałbym na mojej stronie dodać formularz który będzie przesyłał się bez przeładowywania i w sumie działa to email zostaje przesyłany ale chciałbym aby w miejscu formularza na stronie zniknął formularz i pojawiła się odpowiedzieć z serwera. Niestety moj kod nie działa po przesłaniu formularza zostaje przekierowany do strony głównej.
<?php
$imie = $_POST['name'];
$nazwisko = $_POST['lastname'];
$email = $_POST['email'];
$tel = $_POST['number'];
$meseges = $_POST['messages'];
$to = "ww@o2.pl";
$subject = "Formularz kontaktowy na stronie";
$message = "
<html>
<head>
<title>HTML email</title>
</head>
<body>
Imie : $imie <br>
Nazwisko : $nazwisko <br>
Email : $email <br>
Telefon : $tel <br>
Wiadomość : $meseges
</body>
</html>
";
// Always set content-type when sending HTML email
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= 'From: <form@mw.pl>' . "\r\n";
if(mail($to,$subject,$message,$headers)) { echo "Wiadomość została przesłana"; }
else {
echo "Wiadomość nie została przesłana"; }
?>
<h3>Formularz kontaktowy
</h3> <p>Wypełnij formularz kontaktowy i zostaw wiadomość
</p> <form name="contact" method="post"> <input id="name" type="text" name="name" placeholder="Imie"> <input id="lastname" type="text" name="lastname" placeholder="Nazwisko"> <input id="email" type="email" name="email" placeholder="Email"> <input id="number" type="number" name="number" placeholder="Numer"> <textarea id="messages" name="messages" placeholder="Tu wpisz swoją wiadomośc"></textarea>
$("button").click(function(){
$.ajax({
type: "POST",
url: "form.php",
data: "name=" + $('#name').val() + "&lastname=" + $('#lastname').val() + "&email=" + $('#email').val() + "&number=" + $('#number').val() + "&messages=" + $('#messages').val(),
success: function(data){
$('.test').html(data);
}
});
});