Javascript.RU

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

отправка письма ajax
Привет всем!
возникла такая проблемма... письмо приходит с полями undefined
вот сама форма

<form class="order-pufs popup-style" method="post">
      <div class="pufs-container">
        <img src="../img1.jpg" >
       </div>
      <div class="description-pufs">
        <h1 class="title">Кресло</h1>
<input type="text" name="name" placeholder="Введите имя: *" id="name">
       
          <input type="text" name="phone" placeholder="Введите телефон: *" id="phone">
       
.....................
     
    
        <button class="button-order-pufs">Заказать</button>

 
    </form>


Проблемма в том что в письме приходит:

Заказчик: undefined
Его номер телефона: undefined

То есть скрипт то срабатует (и все в нем тоже), а вот почему данные не отправляет нужные? не пойму...


Вот сам скрипт

$(".button-order-pufs").on("click",function(){
	  
    var Top_modal_window = ($(document).scrollTop() + 20);
    $(".ordering").css("top",Top_modal_window+"px","display","block");
	
	 var name,phone;

    name=$('#name').find('input[name="name"]').val();
    phone=$('#phone').find('input[name="phone"]').val();

    $.ajax({
      url: 'sendmessage.php'/*tpa=http://wonderpuff.ru/ordering-send.php*/,
      data: 'name='+name+'&phone='+phone,
      type: 'POST',
      success: function(data){

        $('.popup').children('form').hide();
        $('.popup .done').show();
        popupCenter($('.done').text(data));
        setTimeout(function(){
          $('.popup .done,.popup').hide(700);
        }, 3000)
      }
    });
    return false;	
  });


А вот файл sendmessage.php непосредственно:


<?php
$sendto   = "za-rabotoy@yandex.ru";
$userphone = $_POST['phone'];
$username = $_POST['name'];

// Формирование заголовка письма
$subject  = "Новое сообщение";
$headers  = "From: crossi.ru\r\n";

$headers .= "Content-Type: text/plain;charset=utf-8 \r\n";

// Формирование тела письма
$msg="Заказчик: $username \nЕго номер телефона: $userphone\n\n";

// отправка сообщения
if(@mail($sendto, $subject, $msg, $headers)) {
  echo "true";
} else {
  echo "false";
}

?>


Помогите друзья....
Ответить с цитированием
  #2 (permalink)  
Старый 19.05.2013, 07:57
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Цитата:
name=$('#name').find('input[name="name"]').val();
Ну так Вы в input'е пытаетесь найти ещё один input.

И зачем вообще тэг form, если Вы отправляете ajax запрос?

<div id="form">
   <input type="text" placeholder="Введите имя: *" id="name" />
   <input type="text" placeholder="Введите телефон: *" id="phone" />
   <input type="button" value="Заказать" onclick="send()" />
</div>


function send()
{
   $.post('sendmessage.php', {name:$('#name).val(), phone:$('#phone').val()},
   function(data){
      setTimeout(function(){
          $('#form').hide(700);
      }, 3000)
   });
}
Ответить с цитированием
  #3 (permalink)  
Старый 19.05.2013, 16:12
Аспирант
Отправить личное сообщение для iskander83 Посмотреть профиль Найти все сообщения от iskander83
 
Регистрация: 04.05.2013
Сообщений: 73

Спасибо за подсказку...
var name,phone;

 name=$('#name').val();
    phone=$('#phone').val();


и все заработало...
зачем я вообще какой то ....find('input.... лишний написал....

тег форм (мною описанный код это лишь часть конструкции) - там модальные окна... Может он и не нужен, но эму тоже там класс присвоен, что-бы не переделывать все оставил как есть...
СПАСИБО ПРОФЕССОР (Руслан) - всегда выручаешь...
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
отправка данных в инпут через AJAX imediasun1 Элементы интерфейса 2 30.01.2013 18:06
Отправка запроса ajax Jack Sparrow AJAX и COMET 1 24.11.2012 13:29
input[] ajax отправка vanderv jQuery 0 05.10.2012 14:41
Ajax. Отправка POST с bondary KARTOH AJAX и COMET 4 12.09.2012 10:15
Отправка нескольких форм с помощью ajax voloxa89 jQuery 2 28.09.2011 22:08