Я пытаюсь декодировать json с циклом, который вставляет все объекты в мою БД, следующим является мой php-код, но у меня есть ошибка: Fatal error: нельзя использовать объект типа stdClass as массив в phptest.php на линии 21Ошибка декодирования json array
$postdata = file_get_contents("php://input");
$request = json_decode($postdata);
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}else{
foreach($request as $key => $value) {
$equip = $value['equipment'];
$sql = "INSERT INTO contratos (equipo) VALUES ('$equip')";
}
}
я отправляю с угловой JSON, следующий код моего controller.js
$scope.continue = function(choices)
{
var data = $scope.choices;
$http.post('php/phptest.php', data)
.then(function(response) {
console.log(response);
});
};
И в JSon
[
{
"id":"choice1",
"quantity":1,
"equipment":"BLONG - F25",
"teamvox":true,
"plandatos":"D50"
},
{
"id":"choice2",
"quantity":1,
"equipment":"OUTERFONE - S17",
"evidence":true,
"mobictrl":true,
"plandatos":"D100"
}
]
Вы должны запускать только один раз. – Daerik
Как выглядит var_dump '$ postdata'? Потому что я задаюсь вопросом, преобразует ли объект из js в значения post, а опубликованные данные не json. [Потому что здесь нет ничего плохого в json, опубликованном здесь.] (Https://3v4l.org/T1Nme) –
Попробуйте 'json_decode ($ postdata, true)', чтобы заставить результат быть ассоциативным массивом – Phil