@skygliderus
Excel, HTML, CSS, JS, PHP, adaptive design

Как правильно получить данные из AJAX в PHP?

Всем доброго утра!

В первый раз пишу самостоятельную связку по передачи данных из JS через ajax в php-скрипт. Код вполне стандартный.

$("#raschet").submit(function(event) {
      event.preventDefault();
      var form = this;
      $.ajax({
          type: 'POST',
          url: 'mail.php',
          data: $(this).serialize(),
          success: function() {
              try { roistatGoal.reach({
                'name': ((form.name) ? form.name.value : ''),
                'phone': ((form.tel) ? form.tel.value : ''),
                'email': ((form.email) ? form.email.value : ''),
                'text': ((form.subject) ? form.subject.value : ''),
                'fields': {
                  'Секция': ((fd.pod) ? fd.pod : ''),
                  'Этаж': ((fd.et_text) ? fd.et_text : ''),
                  'Квартира': ((fd.pl_text) ? fd.pl_text : ''),
                  'Планировка': ((fd.kv) ? fd.kv : ''),
                  'Площадь': ((fd.sq) ? fd.sq : ''),
                  'Тип ремонта': ((fd.tr_text) ? fd.tr_text : ''),
                  'Стоимость': ((fd.summ) ? fd.summ : '')
                }
              });
            } catch (e) { console.error(e); }
          },
          error: function() {
              $.popup.open({
                  items: { src: '#error' },
                  type: 'inline'
              }, 0);
          }
      }).done(function() {
          $(this).find("input").val("");
          $("#raschet").trigger("reset");
      });
      return false;
  });


И как разобрать данные из полей name, phone и т.д. я понимаю.

...
$name = trim($_POST["name"]);
$tel = trim($_POST["phone"]);
...


Но как правильно разобрать данные из объекта fields - убей бог не пойму!
  • Вопрос задан
  • 1078 просмотров
Решения вопроса 1
@skygliderus Автор вопроса
Excel, HTML, CSS, JS, PHP, adaptive design
Ребят, спасибо всем за ответы. Ответ, который мне был нужен:
$pod = trim($_POST["fields"]["pod"]);
Это я, видимо не совсем понятно задал вопрос.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
распечатай весь пост и посмотри что там есть
print_r($_POST)

и так получать тоже не самый лучший способ, если предварительно нет проверки что эти данные вообще существуют, лучше уж так:
$name = !empty($_POST["name"])?trim($_POST["name"]):null;
$tel = !empty($_POST["phone"])?trim($_POST["phone"]):null;
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
28 нояб. 2024, в 13:22
1000 руб./за проект
28 нояб. 2024, в 13:00
70000 руб./за проект
28 нояб. 2024, в 12:59
30000 руб./за проект