Параметры Ajax Post - PullRequest
       1

Параметры Ajax Post

0 голосов
/ 16 января 2012

У меня есть скрипт, который отправляет данные в php скрипт:

xhr.open("POST","processData.php");

И я отправляю ему один раз данные:

xhr.send(email);

Как разместить несколько кусочков данных в php-скрипте? Допустим, у меня есть переменная имя и фамилия, которую я хочу отправить для обработки? Я пробовал это:

xhr.send (эссе, firstName);

Но не знаете, что с ним делать в сценарии PHP, я использую обычный $ _POST ['essay'] для сбора значений? а как насчет кодирования?

Спасибо за помощь.

Ответы [ 3 ]

3 голосов
/ 16 января 2012

Вы создаете объект и отправляете это:

var obj = {
    essay: essay,
    firstName: firstName
};
xhr.send("data=" + JSON.stringify(obj));

На стороне сервера вы получаете:

json_decode($_POST['data']); //Gives you a standard object with fields essay and firstName
2 голосов
/ 16 января 2012

просто создайте строку запроса для передачи send()

xhr.send("essay=" + encodeURIComponent(essay) 
          + "&firstname=" + encodeURIComponent(firstName));

О encodeURIComponent вы можете увидеть th Ссылка MDN : может быть необходимо использовать ее, если ваши переменные содержат необычные символы, такие какпробелы, амперсанды и прочее

1 голос
/ 16 января 2012

Используйте JSON (нотация объектов Javascript):

http://www.json.org/

var data = new Object;
data.name = 'some name';
data.id = 123
xhr.send(JSON.stringify(data))

Вы можете превратить это в идентичный объект php с помощью json_decode ().Движок JS в современных браузерах имеет встроенные методы JSON, но в старых IE (6, 7) этого нет, поэтому вам необходимо включить этот скрипт для компенсации:

https://github.com/douglascrockford/JSON-js/blob/master/json2.js

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...