Добавление элементов в многомерный массив во время цикла запроса - PullRequest
0 голосов
/ 25 августа 2010

У меня есть запрос, возвращающий данные, которые выглядят так:

Status         Total
Success        234
Failed         20
Missing        12

Я хочу добавить это в массив, который затем можно использовать для заполнения круговой диаграммы Google.

массив будет выглядеть так:

array backup = array("Success" => 234),
                    ("Failed" => 20),
                    ("Missing" => 12);

Как бы я добавил эти элементы динамически в каждой строке запроса?

Ответы [ 3 ]

2 голосов
/ 25 августа 2010
$result = mysql_query(...);
$backup = array();

while ($r = mysql_fetch_assoc($result)) {
    $backup[$r['Status']] = $r['Total'];
}

Вот как можно выполнить вызов API Google Charts:

$values = implode(',', array_values($backup));
$labels = implode('|', array_keys($backup));

$img = "http://chart.apis.google.com/chart?cht=p3&chd=t:{$values}&chl={$labels}&chs=250x100";
echo "<img src='{$img}' alt='Chart'>";
1 голос
/ 25 августа 2010

Предполагая, что это ваш запрос:

SELECT status, total FROM table

Тогда вы можете сделать:

$data = array();

while(($row = mysql_fetch_assoc($result))) {
    $data[$row['status']] = $row['total'];
}

Если вы не это имеете в виду, пожалуйста, уточните свой вопрос и / или предоставьте коду вас уже есть.

0 голосов
/ 25 августа 2010

Я думаю, что нам нужно больше информации, но пока что смотрите на array_merge ()

http://www.php.net/manual/en/function.array-merge.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...