Я пытаюсь сгенерировать график jqplot. У меня есть простая проблема, но я не могу найти решение, я был бы очень признателен, если бы вы могли мне помочь, я бы тоже взамен, если я тоже смогу, привет, привет.
Jqplot Graph нуждается в таких JSON-данных (3 «[» символа как в начале, так и в конце):
[[["Sciences",5],["Lettres",2],["Informatique",1],["Commerce",1],["Technologie 1",1]]]
Это рабочий код PHP, который я использую для его генерации (за исключением части json_encode (), описанной ниже):
$lectureSql5="SELECT distinct count(professeur.idcategcours) as decompte,categcours.nom as nom FROM professeur INNER JOIN categcours ON professeur.idcategcours=categcours.idcategcours group by professeur.idcategcours";
$lecture5 = mysql_query($lectureSql5) or die(mysql_error());
while ($col=mysql_fetch_array($lecture5)){
$col[0]=intval($col[0]);
$tabGen[]=array($col[1],$col[0]);
};echo json_encode($tabGen);file_put_contents('g1.json', '['.json_encode($tabGen).']');
Как вы можете видеть, после создания массива я пытаюсь json_encode и получаю это на моей html-странице:
[["Sciences",5],["Lettres",2],["Informatique",1],["Commerce",1],["Technologie 1",1]]
Это большая проблема, потому что мне не хватает трех символов «[» как в начале, так и в конце строки!
Так что мне удалось сделать это с file_put_contents (‘g1.json’, ‘[‘ .json_encode ($ tabGen). ‘]’); и это работает, но это не то, что мне нужно, это создание файла!
Мне нужно, чтобы строка появлялась прямо с json_encode в веб-навигаторе!
Я думал о создании основного массива php, с тремя «[» и «]», но я не знаю, как это сделать?
Я пробовал :
echo('['.json_encode($tabGen).']');
но это тоже не работает, сниф!
Так что мне нужна эта строка прямо в мой навигатор:
[[["Sciences",5],["Lettres",2],["Informatique",1],["Commerce",1],["Technologie 1",1]]]
Я был бы очень признателен, если бы вы могли мне помочь, и я сделаю это, если смогу помочь с javascript jquery или советами по jqplot.
спасибо тебе приветственный день «привет привет»! Ах ах
РЕДАКТИРОВАТЬ: все в порядке, я просто нашел решение
$tabAdded=json_encode($tabGen);
echo('['.$tabAdded.']');
Затем строка печатается правильно с 3 «[[[» и 3 «]]]» спасибо
Надеюсь, я правильно понял, вы хотите вывести массив внутри массива, который содержит массивы.
В этом нет никакой магии, просто оберните ваш массив другим массивом, чтобы получить требуемый результат.
header('content-type', 'application/json');
echo json_encode([$a]);
Добавить еще один уровень массива перед json_encode
file_put_contents('g1.json', json_encode([$tabGen]));