Как получить доступ к значениям JSON пожаловать ajax на страницу PHP?


Потратил эти значения с помощью ajax:

$.ajax({
    url: '/loterias/cadastro.php',
    type: "POST",
    data: "{'numeros': '" + numeros + "', 'jogo':'" + jogo + "'}",
    dataType: 'application/json; charset=utf-8',
    success: function (data) {
        debugger;
        alert(data);
    },
    error: function(xhr,err){
        alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
        alert("responseText: "+xhr.responseText);
    } 
});

В PHP (кадастр.php), я получила так (не знаю если правильно):

$data = json_decode(file_get_contents('php://input'), TRUE);

Как я могу дать echo в размере "цифры" и "игра"?

Author: Joao Paulo, 2014-09-27

2 answers

Свойство dataType ссылается на тип данных, который ожидается от сервера, а затем просто используйте 'application/json' если вы хотите вернуть ответ как json...

, Чтобы получить доступ к POST напрямую, минуя decoder много дата, как URI, нормальная -

Jquery:

$.ajax({
    url: '/loterias/cadastro.php',
    type: "POST",
    data: "numeros=" + numeros + "&jogo=" + jogo,
   // dataType: 'application/json; charset=utf-8', // só utilize se o retorno do servidor for em json.
    success: function (data) {
        debugger;
        alert(data);
    },
    error: function(xhr,err){
        alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
        alert("responseText: "+xhr.responseText);
    } 
});

PHP:

print_r($_POST);

И

echo $_POST['numeros'];
echo $_POST['jogo'];
 5
Author: Jader A. Wagner, 2014-09-27 16:36:54

Функция json_decode (), второй параметр TRUE преобразует объект json в ассоциативный массив, я пытаюсь;

$numeros = $data['numeros'];
$jogo = $data['jogo']; 

И Еще один аспект: должны обратить кавычки в json объект, потому что объект действителен в php, имя и значение должны быть в двойные кавычки, "имя":"значение" (в случае строки)

Http://php.net/manual/en/function.json-decode.php

 4
Author: Manuel Gerardo Pereira, 2014-09-27 16:30:58