Здравствуйте. Такой вопрос. Нужно нажать кнопку из js с id "close". Чтобы при успешном выполнени php нажималась, а при неудачно также выводился текст.
$(document).ready(function(){
$('#btn_submit').click(function(){
// собираем данные с формы
var name = $('#name').val();
var email = $('#email').val();
var tel = $('#tel').val();
var text = $('#text').val();
var check = $('#box').is(':checked');
// отправляем данные
$.ajax({
url: "mail.php", // куда отправляем
type: "post", // метод передачи
dataType: "json", // тип передачи данных
data: { // что отправляем
"name": name,
"email": email,
"tel": tel,
"check": check,
"text": text
},
// после получения ответа сервера
success: function(data){
$('.messages').html(data.result); // выводим ответ сервера
}
});
});
});
<?php
$msg_box = ""; // в этой переменной будем хранить сообщения формы
$errors = array(); // контейнер для ошибок
// проверяем корректность полей
if($_POST['email'] == "") $errors[] = "Поле 'Ваш e-mail' не заполнено!";
if($_POST['name'] == "") $errors[] = "Поле 'Ваше имя' не заполнено!";
if($_POST['tel'] == "+7 ") $errors[] = "Ваш номер телефона не указан";
if($_POST['check'] == 'false') $errors[] = "Для продолжения нужно согласиться с условиями";
// если форма без ошибок
if(empty($errors)){
// собираем данные из формы
$message = "Имя клиента: " . $_POST['name'] . "<br/>";
$message .= "E-mail клиента: " . $_POST['email'] . "<br/>";
$message .= "Номер телефона клиента: " . $_POST['tel'] . "<br/>";
$message .= "Текст письма: " . $_POST['text'] . "<br/>";
$message .= "Согласие: " . $_POST['check'];
send_mail($message); // отправим письмо
// выведем сообщение об успехе
$msg_box = "<span style='color: green;'>Сообщение успешно отправлено!</span>";
}else{
// если были ошибки, то выводим их
$msg_box = "";
foreach($errors as $one_error){
$msg_box .= "<span style='color: red;'>$one_error</span><br/>";
}
}
// делаем ответ на клиентскую часть в формате JSON
echo json_encode(array(
'result' => $msg_box
));
// функция отправки письма
function send_mail($message){
// почта, на которую придет письмо
$mail_to = "sales@gmail.xom";
// тема письма
$subject = "Письмо с ОтзывМаркет";
// заголовок письма
$headers= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n"; // кодировка письма
$headers .= "From: Клиент с сайта\r\n"; // от кого письмо
// отправляем письмо
mail($mail_to, $subject, $message, $headers);
}
?>