Я посмотрел на другие ответы SO, и я не получаю ответа. Я делаю простую форму HTML с PHP-скриптом, который отправляет электронное письмо. Просто. Кроме того, что он не работает. Вот HTML:PHP-форма отправляет пустое электронное письмо
<form action="" method="post" id="contactform">
<fieldset>
<legend>Contact Form</legend>
<p><label>First Name: </label><input type="text" name="first_name" class="text" required></p>
<p><label>Last Name: </label><input type="text" name="last_name" class="text" required></p>
<p><label>Email: </label><input type="text" name="email" class="text" required></p>
<p><label>Message:</label><textarea rows="5" name="message" cols="30" class="message" required></textarea></p>
<input type="submit" name="submit" value="Submit" class="submit">
</fieldset>
</form>
Вот AJAX:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$("#contactform").submit(function(){
$.get("contactsend.php", function(data){
alert(data);
})
return false;
})
</script>
И вот contactsend.php:
<?php
$to = "[email protected]"; // this is your Email address
$from = $_POST['email']; // this is the sender's Email address
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$subject = "Form submission";
$message = $first_name . " " . $last_name . " wrote the following:" . "\n\n" . $_POST['message'];
$headers = "From: " . $from;
if (mail($to,$subject,$message,$headers)) {
echo "Mail sent.";
} else {
echo "An error occured. Try again later.";
}
>
Когда нажмите на кнопку отправить, страница говорит " Mail отправлен. ", Но письмо проходит через пробел. Я не уверен, почему массив _POST будет пустым. Может кто-нибудь, пожалуйста, помогите мне?
Заранее спасибо :)
Вы пропустили отправку данных формы на свой сервер: [jQuery.get (url, data, success)] (http://api.jquery.com/jquery.get/#jQuery-get-url- data-success-dataType) – Andreas
Извините, я учусь на лету. Где я могу это сделать? –