2014-11-10 3 views
0

У меня есть 6 объектов JS, каждая из которых содержит три значения.Извлечение значений из объекта post ajax

Вопрос1 = {testNumber: 51, Ответ: 2, timeComplete: 5:00:00) question2 = и т.д. и т.д. и т.п.

то у меня есть один объект, чтобы держать их всех: вар allQuestions = {q1 : question1, q2: question2, q3: question3, q4: question4, q5: question5, q6: question6};

Я использовал Ajax для отправки этого объекта на мою страницу PHP:

$ .ajax ({

type: 'POST', 

url: allURL, 

data: {"questions" : JSON.stringify(allQuestions)}, 


success: function(resp){ 

    $('#allanswers').append(resp); 


}, 
error: function(xhr, status, errorThrown) { 
    alert("Sorry, there was a problem!"); 
    console.log("Error: " + errorThrown); 
    console.log("Status: " + status); 
    console.dir(xhr); 
}, 

});

теперь им пытаются получить доступ к этим переменным на стороне сервера:

Что я делаю неправильно? Я понимаю, что это может быть проблема с гнездованием, но я запутался в том, как ссылаться на эти объекты/массивы.

ответ

0

При отправке запроса на сервер в PHP, вы получите доступ к этой информации через $ _REQUEST переменного (http://php.net/manual/en/reserved.variables.request.php)

Try включая это в коде PHP, чтобы увидеть именно то, что послано на сервер:

<?php print_r($_REQUEST); ?> 
+0

Array ([questions] => {\ "q1 \": {\ "testNumber \": \ "31 \", \ "Answer \": \ "1 \", \ "timeComplete \": \ " 16:39:91 \ "}, \" д2 \ ": {\" testNumber \ ": \" 30 \ "\ "Ответ \": \ "1 \", \ "timeComplete \": \" 16: 39:69 \ "}, \" q3 \ ": {\" testNumber \ ": \" 29 \ "\ "Ответ \": \ "1 \", \ "timeComplete \": \" 16:39: 19 \ "}, \" Q4 \ ": {\" testNumber \ ": \" 28 \ "\ "Ответ \": \ "1 \", \ "timeComplete \": \" 16: 38: 61 \ "}, \" q5 \ ": {\" testNumber \ ": \" 27 \», \ "ответ \": \ "1 \", \ "timeComplete \": \ "16: 38: 83 \"} , \ "q6 \": {\ "testNumber \": \ "27 \", \ "Ответ \": \ "1 \", \ "timeComplete \": \ "16: 39: 51 \"}}) –

+0

Так что, в моем php, если бы я хотел получить q2.testnumber, каков будет мой синтаксис? Я пробовал $ q1_questionID = $ questions [1] ["testNumber"]; Который, очевидно, не работает. –

+0

Отлично! Похоже, что информация там очень хорошая. Теперь вы можете просто рассматривать это как любой другой ассоциативный массив в PHP. '$ _REQUEST ['questions'] ['q1'] ['testNumber'];' –

0

Я не смог использовать этот ответ. По какой-то причине массив не был доступен. Я закончил тем, что использовал регулярную форму для создания ссылок. Мне нужно больше узнать о ajax/jquery/php.

Спасибо Кейси за вашу попытку.

Смежные вопросы