За последние 24 часа нас посетили 18763 программиста и 1678 роботов. Сейчас ищет 1851 программист ...

Получить в php массив из js

Тема в разделе "JavaScript и AJAX", создана пользователем Tourg, 13 май 2017.

  1. Tourg

    Tourg Новичок

    С нами с:
    13 май 2017
    Сообщения:
    1
    Симпатии:
    0
    Доброе время суток, возникла проблема.
    Нужно в файле с формой получить массив после ajax запроса.

    Вот файл ajax.js, который подключен к index.php.
    Код (Javascript):
    1. function sendA(){
    2.         var data=$('.form_auth').serialize();
    3.             $.ajax({
    4.                 type:'POST',
    5.                 url:"handler.php",
    6.                 data:data,
    7.                 cache:false,
    8.                 dataType: "json",
    9.                 success:function(data){
    10.                     var res = eval(data);
    11.                     // теперь нужно как то отправить этот массив обратно в index.php
    12.                    
    13.                 }
    14.         });
    15.  }  
    Данные отправляются в обработчик, в котором формируется массив вида
    PHP:
    1. $data =
    2. [
    3. 'one' => 1,
    4. 'two' => 2
    5. ];
    6.  
    7. echo json_encode($data);
    Пытался сделать с помощью jQuery.getJSON(), но не сумел разобраться. Третий день периодически возвращаюсь к этой проблеме, так как нужно реализовать в нескольких местах этот способ.
    Прошу помощи у тех кто разбирается.
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Что выведет?
    В PHP отправь заголовки, что отдаёшь json, и тогда data будет доступна как объект, она сразу переведётся из json
     
    Алекс8 нравится это.
  3. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    1. При отправке в json сериализовать не надо..
    2. При помощи $.ajax Вы отправили странице handler.php POST запрос
    3. Там с помощью json_deencode($_POST['data']) можно посмотреть в виде обычного массива что прислали..
    4. Дальше я так понимаю Вы хотите эти данные в файле handler.php как то обработать и послать ответ.
    5. Для этого Вам надо обработанные данные и вернуть их. Вернуть можно просто с помощью echo... это может быть готовый html код который Вы потом просто помещаете в нужное место на экране.. или это может быть JSON объект который потом можно в массив преобразовать..