0

より基本的な形式で使用する必要があるデータを含む mysql テーブルがあります。

ID番号、日付、オイル、ガス​​、電気の値があります。

必要なすべての値を戻す mysql_fetch_array を実行できますが、JavaScript チャートで使用する形式でそれらを表示する必要があります。次の形式にする必要があります。

$data = array(array("6/22/2009",425.32),array("6/8/2009",424.84),array("5/26/2009",417.23),array("5/11/2009",390));

ご覧のとおり、日付とオイルの値が必要です。次に、日付と電気の値、最後にデータとガスの値を含む別の配列を作成する必要があります。

上記のように mysql_fetch_array からデータを取得して配列に追加する方法がわかりません。誰でも助けることができますか?

4

4 に答える 4

2

[]次の構文で追加できます。

$data = array('oil' => array(), 'gas' => array(), 'electric' => array());
while ($row = mysql_fetch_assoc($result)) {
    $data['oil'][$row['date']] = $row['oil'];
}

これは、選択された日付も一意であることを前提としています。


ところで、mysql_*新しいコードで関数を使用することは避けるべきです。

于 2013-03-12T10:16:11.803 に答える
1

「数値配列」を使用する必要があります。

    $result = mysql_query(" SELECT date, oil FROM energyprices");
    $i = 0;
    while($row = mysql_fetch_array($result, MYSQL_NUM))
    {
         $oil[$i] = array($row[0], $row[1]);
         $i++;
    }

あなたの質問を理解していない場合は修正してください。それに応じて回答を編集します。

于 2013-03-12T10:45:55.697 に答える
0

これを試して..

$finalArray=array();
while ($row = mysql_fetch_array($result)) 
{ 
    $data=array();
    $data[] = $row['date'];
    $data[] = $row['oil'];
    $finalArray[]=$data;
}
print_r($finalArray); //This will print your values in required fromat.
于 2013-03-12T10:21:55.337 に答える
0

ご協力いただきありがとうございます。これを読むようにコードを修正しました:

$oil = array('oil' => array());
$result=mysql_query(" SELECT * FROM energyprices");
while ($row = mysql_fetch_assoc($result)) {
$oil[$row['pDate']]['oil'] = $row['oil'];
}

データを print_r すると、次のようになります。

Array ( [oil] => Array ( ) [2004-01-01] => Array ( [oil] => 29.73 ) [2004-01-02] => Array ( [oil] => 29.73 ));

必要な形式は次のとおりです。

$oil = array(
array("6/22/2009",425.32),
array("6/8/2009",424.84),
array("5/26/2009",417.23));

ありがとうございました!

于 2013-03-12T10:36:23.247 に答える