Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.08.2014, 12:20
Интересующийся
Отправить личное сообщение для Asrover Посмотреть профиль Найти все сообщения от Asrover
 
Регистрация: 23.08.2014
Сообщений: 20

Не работает отправка формы через ajax
Всем привет. Есть такой код.
<form action="" method="post"> 
<input type="text" name="name" id="name" placeholder="Введите ваше имя..."></br>
<input type="submit" onclick="norestart();" value="Отправить заказ">
</form><div class="result"></div>


function norestart() {
var data = $('#name').val();
       $.ajax({
                type: "POST",
                url: "../php/form-processing.php",
                data: "data="+data,
                success: function() {
                        $(".result").empty();
                        $(".result").html("Сообщение отправлено!");
                }     
               
        });
}


<?php
$data = $_POST[data];
if (mail('mymail@mail.ru','Re: Данные отправлены вашей контактной формой',"
	Имя: $data"))
	$a=true; 
if (isset($a)) { 
echo ('Спасибо! Ваше сообщение успешно отправлено!');
}
?>


При нажатии на кнопку, данные формы просто сбрасываются. В переменную data данные приходят нормально. Все пути проверял. Без скрипта обработчик php работает правильно. В чем ошибка?
Ответить с цитированием
  #2 (permalink)  
Старый 23.08.2014, 12:30
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Asrover, если данные сбрасываются, то каким образом в переменную data данные приходят нормально?
Ответить с цитированием
  #3 (permalink)  
Старый 23.08.2014, 15:20
Интересующийся
Отправить личное сообщение для Asrover Посмотреть профиль Найти все сообщения от Asrover
 
Регистрация: 23.08.2014
Сообщений: 20

Выводил содержимое переменной data после строчки
var data = $('#name').val();
Ответить с цитированием
  #4 (permalink)  
Старый 23.08.2014, 16:04
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Asrover,
<form id="forma">
	<input type="text" name="data" placeholder="Введите ваше имя..."><br>
	<input type="submit" value="Отправить заказ">
</form>
<div id="result"></div>

$(function(){
	$('#forma').submit(function(e){
		e.preventDefault();
		$.ajax({
			type: 'post',
			url: '../php/form-processing.php',
			data: $(this).serialize(),
			success: function(data){
				$('#result').html(data);
			}    
		});
	});
});

<?php
if (isset($_POST['data'])) {
	$data = $_POST['data'];
	$a = mail('mymail@mail.ru','Re: Данные отправлены вашей контактной формой','Имя: '.$data);
	if ($a) {
		echo 'Спасибо! Ваше сообщение успешно отправлено!';
	} else {
		echo 'Ваше сообщение не отправлено!';
	}
}
?>

Последний раз редактировалось Rise, 23.08.2014 в 16:31.
Ответить с цитированием
  #5 (permalink)  
Старый 23.08.2014, 16:23
Интересующийся
Отправить личное сообщение для Asrover Посмотреть профиль Найти все сообщения от Asrover
 
Регистрация: 23.08.2014
Сообщений: 20

Теперь при нажатии на кнопку вообще ничего не происходит.
Ответить с цитированием
  #6 (permalink)  
Старый 23.08.2014, 16:28
Интересующийся
Отправить личное сообщение для Asrover Посмотреть профиль Найти все сообщения от Asrover
 
Регистрация: 23.08.2014
Сообщений: 20

Rise,
Спасибо большое! Заработало)
Ответить с цитированием
  #7 (permalink)  
Старый 23.08.2014, 16:33
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Asrover,
1. jquery подключен?
2. путь '../php/form-processing.php' правильный?
Ответить с цитированием
  #8 (permalink)  
Старый 23.08.2014, 16:38
Интересующийся
Отправить личное сообщение для Asrover Посмотреть профиль Найти все сообщения от Asrover
 
Регистрация: 23.08.2014
Сообщений: 20

Rise,
Нужно было написать php/ без ../php и тогда ваш код работает. Я думал нужно было подняться на уровень вверх, так как обработчик и скрипт находятся в разных папках.
Ответить с цитированием
  #9 (permalink)  
Старый 23.08.2014, 16:44
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Asrover, ну так пляшут от страницы с формой а не от скрипта.
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
При отправке через ajax не открывается файл-адресат temuch-13 AJAX и COMET 6 09.07.2014 17:03
Ajax работает через раз MixMuz AJAX и COMET 7 04.07.2014 03:31
Книги по Ajax BaVa Учебные материалы 18 18.08.2013 14:05
Отправка формы HTML через outlook Platypus Общие вопросы Javascript 2 18.07.2013 01:07
Отправка формы по ENTER (ajax) byzyk jQuery 2 07.11.2012 18:03