Редакция на это:
<?php
$url = 'http://yoco-core-staging.herokuapp.com/api/common/v1/properties/businessCategories';
$content = file_get_contents($url);
$json = json_decode($content, true);
?>
<select>
<?php
foreach($json['data'] as $item) {
print '<option>'.$item[2].'</option>';
}
?>
</select>
Это новый код, который я ввел, чтобы оператор SELECT отображал эти параметры. Все, что я должен сделать сейчас, - это создать функцию для удаления повторяющихся записей, а затем сделать bam!
Спасибо за всю помощь и комментарии
3 ответа
Вы должны попробовать это. это распечатать все данные, которые возвращают ваш JSON.
<?php
$url = 'http://yoco-core-staging.herokuapp.com/api/common/v1/properties/businessCategories';
$content = file_get_contents($url);
$json = json_decode($content, true);
foreach($json['data'] as $item) {
print $item[0];
print $item[1];
print $item[2];
print '<br>';
}
Ссылка на группу, которую вы используете в своем коде, не идентифицируется как имя поля в объекте JSON, поэтому вы получаете неопределенную ошибку.
Объект JSON возвращается следующим образом:
array(2) {
["status"]=>
int(200)
["data"]=>
array(122) {
[0]=>
array(3) {
[0]=>
string(4) "5462"
[1]=>
string(6) "Bakery"
[2]=>
string(27) "Food, drink and hospitality"
}
[1]=>
array(3) {
[0]=>
string(4) "5813"
[1]=>
string(3) "Bar"
[2]=>
string(27) "Food, drink and hospitality"
}
[2]=>
Вы можете просто перебрать объект, используя номер ссылки, которую возвращает объект. Для вашего случая вы можете просто повторить $ json [data] [1] & $ json [data] [2] foreach object.
[Пожалуйста, добавьте комментарий перед голосованием]
Вы можете сделать что-то вроде этого:
$.ajax({
url: 'http://yoco-core-staging.herokuapp.com/api/common/v1/properties/businessCategories',
dataType: 'JSON',
success: function(data, status) {
//data = JSON.parse(data); this is optional depending on the type you are getting from the server
var len = data.length;
var html = '';
for(var i = 0; i < len; i++){
var id = data[i].Id;
var title = data[i].title;
var group = data[i].group;
html += '<li>'+id+' - '+title+' - '+group+'</li>';
}
$('#somecontainer').html('<ul>'+html+'</ul>');
},
error: function(e) {
console.log(e);
}
});
Я не знаю названия полей, но это в основном это
Похожие вопросы
Связанные вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.