Вывод PHP JSON с mysql для tag-it

Я пытаюсь заставить плагин tag-it jquery работать со строкой json. В настоящее время я получаю свои значения из базы данных следующим образом:

$query = sprintf(
            'SELECT
                t.tag
            FROM
                tags AS t
            ');

    $row_set= array();

    if($result = mysqli_query($db, $query))
    {
        // fetch data
        while ($row = mysqli_fetch_assoc($result))
        {
            $row_set[] = $row;
        }

        // set the output
        echo json_encode($row_set);
    }

который дает следующий вывод при вызове в AJAX:

[{"tag":"test"},{"tag":"tests"}]

Но я должен вывести строку JSON в следующем формате:

["android-intent","animate","architecture","artificial-intelligence","attributes"]

Как я могу достичь этого?

2 ответа

Решение

Когда вы используете row_set[] = $row; более вероятный $row выглядит так $row['tag'] = 'test вот почему у вас есть формат объекта JSON;

Пытаться

  $row_set[] = $row['tag']; 

Убедитесь, что вы также установили параметр seound в true делать JSON всегда возвращать массив

   json_encode($row_set,true);

Это вернет его как массив, а не как объект

Это должно исправить это, добавив строку в вашу стрелку вместо добавления массивов в ваш массив.

$row_set[] = $row[0]; or $row_set[] = $row['tag'];
Другие вопросы по тегам