Впервые пробую создать отправку формы через AJAX и получаю 500 ошибку сервера. Знаю, что подобные темы уже есть и много, но полезного ничего не подчерпнул. Собственно вот код отправки и обработки.
$( document ).ready(function() {
$("#send-btn").click(
function(){
sendAjaxForm('result_form', 'submit-your-app', 'action_ajax_form.php');
return false;
}
);
});
params = $('.add_comment').serialize()
$.post('add_comment', {id_advert: <your id advert>, data: params});
function sendAjaxForm(result_form, ajax_form, url) {
$.ajax({
url: url, //url страницы (action_ajax_form.php)
type: "POST", //метод отправки
dataType: "html", //формат данных
data: $("#"+ajax_form).serialize(), // Сеарилизуем объект
success: function(response) { //Данные отправлены успешно
result = $.parseJSON(response);
$('#result_form').html('Имя: '+result.name+'<br>Телефон: '+result.phone);
},
error: function(response) { // Данные не отправлены
$('#result_form').html('Ошибка. Данные не отправлены.');
}
});
}
<form id="submit-your-app" class="i-form" method="post" action="">
<div class="form-group">
<input type="text" name="name" placeholder="Фамилия Имя" autocomplete="off">
</div>
<div class="form-group">
<input type="text" name="phone" placeholder="Контактный телефон" autocomplete="off">
</div>
<button id="send-btn" type="button" ><span>отправить</span></button>
</form>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST['name'])) {$name = $_POST['name'];}
if (isset($_POST['phone'])) {$phone = $_POST['phone'];}
if (isset($_POST['formData'])) {$formData = $_POST['formData'];}
$to = "one@gmail.com"; /*Укажите адрес, на который должно приходить письмо*/
$sendfrom = "two@gmail.com"; /*Укажите адрес, с которого будет приходить письмо, можно не настоящий, нужно для формирования заголовка письма*/
$headers = "From: " . strip_tags($sendfrom) . "\r\n";
$headers .= "Reply-To: ". strip_tags($sendfrom) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";
$subject = "$formData";
$message = "$formData<br> <b>Имя пославшего:</b> $name<br> <b>Телефон:</b> $phone";
$send = mail ($to, $subject, $message, $headers);
if ($send == 'true')
{
echo '<center> Спасибо за отправку вашего сообщения!</center>';
}
else
{
echo '<center><b>Ошибка. Сообщение не отправлено!</b></center>';
}
} else {
http_response_code(403);
echo "Попробуйте еще раз";
}
?>
$_POST['formData']
- это что? Уберите.
Строки
dataType: "html", //формат данных
и
result = $.parseJSON(response);
противоречат друг другу. Выберите что-нибудь одно.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Хочется исключить взломы баланса и покупокКакие есть еще способы атак на финансовые сайты помимо перечисленных и как от них защититься?
Не получается написать регулярное выражение, которое заменяло бы все пути с картинкамиКод:
Есть php скрипт, которому для работы нужны токеныТокены хранятся в отдельной папке в ini файле