Я отправляю данные в ajax (массив json)
$.ajax({
type: 'POST',
url: "http://localhost:8080/rest/test",
data: JSON.stringify({
"type":["car"],
"country": ["Italy", "Canada"],
"price" : [55 000],
"colors": ["blue", "black", "red"]
}),
success: function(data) {
console.log("success:", data); // show an empty array
},
failure: function(errMsg) {
console.error("error:",errMsg);
}
dataType: "json",
contentType: "application/json"
});
Когда я хочу получить данные на странице php, где у меня есть запрос sql, я всегда получаю пустой ответ.
function getData() {
$y = $_POST;
$array = [];
$array = array_push($array, $y);
$j = json_decode($array);
foreach($j as $k){
$t = $k->type;
$c = $k->country;
$p = $k->price;
$col = $k->colors;
}
$type = join("','", $t);
$country = join("','", $c);
$price = join("','", $p);
$colors = join("','", $col);
global $wpdb;
$query = "SELECT * FROM vehicles WHERE type IN ('$type') AND (country IN ('$country') OR price IN ('$price') OR colors IN ('$price')) ORDER BY ID DESC";
$result = $wpdb->get_results($query);
return $result;
}
Я бы хотел получить массив, подобный этому:
'[{"type":["car"], "country": ["Italy", "Canada"], "price" : [55 000], "colors": ["blue", "black", "red"]}]'
И затем сделать json_decode (этот массив);
Может кто-нибудь подсказать мне, как это сделать?
Спасибо