обратный serialize () -jquery - PullRequest
1 голос
/ 02 июня 2011

Я отправил свои данные (json) для запроса ajax с этим кодом;

var formdata = $("#customForm").serialize();

            type: "post",
            dataType: "json",
            data: formdata,

В файле php есть ли возможность изменить сериализацию?

или мне нужно сделать что-то подобное: $pass = $_POST['pass']; для всех полей?

спасибо

Ответы [ 3 ]

1 голос
/ 02 июня 2011

звучит так, как будто вы движетесь в правильном направлении со своим утверждением "или". Данные должны быть доступны в массиве $ _POST без необходимости «десериализации» чего-либо.

EDIT

Попробуйте назвать поля ввода так, чтобы они все входили в переменную post в виде массива:

<input name="myformdata[first_name]" id="first_name" />
<input name="myformdata[last_name]" id="last_name" />

Затем в массиве записей вы можете получить доступ ко всем данным формы, например:

<?php $form_data_array = $_POST['myformdata']; ?>
1 голос
/ 02 июня 2011

Попробуйте PHP * extract функция:

extract($_POST);

Пример :

$_POST = array('var_1' => 1234, 'var_2' => 'another variable');

extract($_POST);

echo $var_1.' '.$var_2;

Выходы :

1234 другая переменная

Применимо к вашей ситуации :

извлечение ($ _ POST);

Приводит к тому, что любые пары key => value, присутствующие в массиве $_POST, извлекаются в переменные.

Как и при $pass = $_POST['pass'] для всех переменных в массиве $_POST.

Пояснение :

extract будет импортировать переменные из массива в текущую таблицу символов.

Он проверяет каждый ключ на наличие действительного имени переменной.Он также проверяет наличие конфликтов с существующими переменными в таблице символов.

С Документы PHP (извлечение)

0 голосов
/ 02 июня 2011

Да.Вам просто нужно получить доступ как $pass = $_POST['pass'] :).

...