Редакция на это:

<?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
Devin Gray 17 Дек 2015 в 13:20

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>';
}
1
Ankit Kathiriya 17 Дек 2015 в 10:39

Ссылка на группу, которую вы используете в своем коде, не идентифицируется как имя поля в объекте 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.

0
BroodjeBE 17 Дек 2015 в 10:46

[Пожалуйста, добавьте комментарий перед голосованием]

Вы можете сделать что-то вроде этого:

$.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);             
       }
   });

Я не знаю названия полей, но это в основном это

-1
Keyboard ninja 17 Дек 2015 в 10:29