Разобрать строку JSON в базу данных - PullRequest
1 голос
/ 06 сентября 2011

У меня проблемы с анализом строки JSON в моей базе данных MYSQL.Это JSON-строка, отправляемая на сервер:

    [{"Description":"Detta är mitt quiz!","Title":"Mitt Quiz","Category":"Music","Language":"Swedish","Difficulty":1},{"QuestionNr1":{"WrongAnswer3":"Visby","WrongAnswer1":"Stockholm","RightAnswer":"Uppsala","WrongAnswer2":"Umeå","Question":"Vilken stad bor jag i?"},"QuestionNr2":{"WrongAnswer3":"Visby","WrongAnswer1":"Stockholm","RightAnswer":"Uppsala","WrongAnswer2":"Umeå","Question":"Vilken stad bor jag inte i?"}}]

Это данные перед вызовом [mArray JSonrepresentation];

(
    {
    Category = Music;
    Description = "Detta \U00e4r mitt quiz!";
    Difficulty = 1;
    Language = Swedish;
    Title = "Mitt Quiz";
},
    {
    QuestionNr1 =         {
        Question = "Vilken stad bor jag i?";
        RightAnswer = Uppsala;
        WrongAnswer1 = Stockholm;
        WrongAnswer2 = "Ume\U00e5";
        WrongAnswer3 = Visby;
    };
    QuestionNr2 =         {
        Question = "Vilken stad bor jag inte i?";
        RightAnswer = Uppsala;
        WrongAnswer1 = Stockholm;
        WrongAnswer2 = "Ume\U00e5";
        WrongAnswer3 = Visby;
    };
}

)

Я использую метод POST из ASIHTTPRequest, но не знаю, как получить его на стороне сервера и проанализировать его с помощью PHP в моей базе данных.

Может кто-нибудь направить меня в правильном направлении, и я был бы очень счастлив!

// Спасибо!

Ответы [ 2 ]

0 голосов
/ 06 сентября 2011

Если вы не используете POST JSON-строку в именованной переменной, содержимое будет доступно в полезной нагрузке запроса, читаемой из stdin.

// Read contents from stdin
$json_string = file_get_contents('php://input');

Если вы отправляете JSON-строку как именованную POST-переменную, ее содержимое находится в $_POST['varname'].

Чтобы проанализировать JSON-строку в PHP, вы будете использовать функцию json_decode. Успешность синтаксического анализа можно проверить с помощью функции json_last_error.

// Parse a JSON-string into PHP native equivalents
$json_parsed = json_decode($json_string);

if (json_last_error() === JSON_ERROR_NONE) {
    var_dump($json_parsed);
} else {
    // Error parsing JSON
}
0 голосов
/ 06 сентября 2011

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

$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json));

переберите $ json и создайте SQL-запрос

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