€
$
₴
₽
EN
RU
Vmeste.EU
Лента
Каталог
Файлы
Форумы
Услуги
Основное
Radiotalk
Пользовательское
Программирование
6 •
Посмотреть все темы
После отправки данных с формы она не очищается.
1
1
Vita
@Vita
12.01.2018
Пожалуйста, помогите уже не один день бьюсь над этим вопросом.
Есть форма. Работает нормально, все отправляется, но при повторном ее открытии (если не перезагружать страницу), отрывается форма с конечным результатом, что данные уже отправлены.
может у кого-то есть варианты как решить эту проблему вот код PHP:
<?php
$errors = array();
$form_data = array();
if ($_POST['name'] == "")
{
$errors['name'] = 'Введите Ваше имя';
}
if ($_POST['phone'] == "")
{
$errors['name'] = 'Введите Ваш телефон';
}
if (!empty($errors))
{
$form_data['success'] = false;
$form_data['errors'] = $errors;
}
else
{
$message = "<h1>Заявка с сайта ".$_SERVER['HTTP_HOST']."</h1>";
foreach($_POST as $k => $v)
{
$message .= $k.": ".$v."<br />";
}
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf8' . "\r\n";
if (mail('owts2017@gmail.com', 'Заявка с сайта '.$_SERVER['HTTP_HOST'], $message, $headers))
{
$form_data['success'] = true;
$form_data['posted'] = 'Мы свяжемся с Вами в течение часа';
}
else
{
$errors['name'] = 'Ошибка отправки письма';
}
echo json_encode($form_data);
?>
И script:
$(function() {
$('.popupbutton').fancybox({
'padding': 37,
'overlayOpacity': 0.87,
'overlayColor': '#fff',
'transitionIn': 'none',
'transitionOut': 'none',
'titlePosition': 'inside',
'centerOnScroll': true,
'maxWidth': 400,
'minHeight': 310
});
$('#phone').mask('+38 (000) 000-00-00');
$("#form-feedback").submit(function(event) {
if ($('#name').val() == "")
{
$('#bthrow_error_name').fadeIn(1000).html('Укажите Ваше имя, пожалуйста.');
}
else if ($('#phone').val() == "")
{
$('#bthrow_error_name').empty();
$('#bthrow_error_phone').fadeIn(1000).html('Укажите Ваш телефон, пожалуйста');
}
else
{
var postForm = {
'name' : $('#name').val(),
'phone' : $('#phone').val()
};
$.ajax({
type : 'POST',
url : 'feedback.php',
data : postForm,
dataType : 'json',
success : function(data)
{
if (!data.success)
{
if (data.errors.name)
{
$('.throw_error').fadeIn(1000).html(data.errors.name);
}
}
else
{
$('#form-feedback').fadeIn(1000).html('<p>' + data.posted + '</p>');
}
}
});
}
event.preventDefault();
});
});
Заранее спасибо.
8497
Степан
@Trilby
15.01.2018
Сохранение пароля в браузере случайно не сработало?
Проверь под инкогнито
[quote=Vita]Пожалуйста, помогите уже не один день бьюсь над этим вопросом. Есть форма. Работает нормально, все отправляется, но при повторном ее открытии (если не перезагружать страницу), отрывается форма с конечным результатом, что данные уже отправлены. может у кого-то есть варианты как решить эту проблему вот код PHP: <?php $errors = array(); $form_data = array(); if ($_POST['name'] == "") { $errors['name'] = 'Введите Ваше имя'; } if ($_POST['phone'] == "") { $errors['name'] = 'Введите Ваш телефон'; } if (!empty($errors)) { $form_data['success'] = false; $form_data['errors'] = $errors; } else { $message = "<h1>Заявка с сайта ".$_SERVER['HTTP_HOST']."</h1>"; foreach($_POST as $k => $v) { $message .= $k.": ".$v."<br />"; } $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=utf8' . "\r\n"; if (mail('owts2017@gmail.com', 'Заявка с сайта '.$_SERVER['HTTP_HOST'], $message, $headers)) { $form_data['success'] = true; $form_data['posted'] = 'Мы свяжемся с Вами в течение часа'; } else { $errors['name'] = 'Ошибка отправки письма'; } echo json_encode($form_data); ?> И script: $(function() { $('.popupbutton').fancybox({ 'padding': 37, 'overlayOpacity': 0.87, 'overlayColor': '#fff', 'transitionIn': 'none', 'transitionOut': 'none', 'titlePosition': 'inside', 'centerOnScroll': true, 'maxWidth': 400, 'minHeight': 310 }); $('#phone').mask('+38 (000) 000-00-00'); $("#form-feedback").submit(function(event) { if ($('#name').val() == "") { $('#bthrow_error_name').fadeIn(1000).html('Укажите Ваше имя, пожалуйста.'); } else if ($('#phone').val() == "") { $('#bthrow_error_name').empty(); $('#bthrow_error_phone').fadeIn(1000).html('Укажите Ваш телефон, пожалуйста'); } else { var postForm = { 'name' : $('#name').val(), 'phone' : $('#phone').val() }; $.ajax({ type : 'POST', url : 'feedback.php', data : postForm, dataType : 'json', success : function(data) { if (!data.success) { if (data.errors.name) { $('.throw_error').fadeIn(1000).html(data.errors.name); } } else { $('#form-feedback').fadeIn(1000).html('<p>' + data.posted + '</p>'); } } }); } event.preventDefault(); }); }); Заранее спасибо.[/quote]