2

これが私のテーブル構造です。
ここに画像の説明を入力

ここに画像の説明を入力

ハイチャートを使用しています

これが私のコードです:

    $(function () {
      $('#container_journal').highcharts({

        xAxis: {
            categories: [
                 '1995', '1996', '1997', '1988'
        ]
        },
        yAxis: {
            title: {
                text: 'Citations'
            },
            plotLines: [{
                value: 0,
                width: 1,
                color: '#808080'
            }]
        },
        tooltip: {
            valueSuffix: ''
        },
        legend: {
            layout: 'vertical',
            align: 'right',
            verticalAlign: 'middle',
            borderWidth: 0
        },
        series: [{
            name: 'A + U-Architecture and Urbanism',
            data: [<?php 
            $test_q = mysql_query("SELECT jour_id, journal, citations, year FROM journ_graph WHERE jour_id = '1'");
    while($row_q = mysql_fetch_array($test_q)){
        $year_q = $row_q['year'];
        $citations_q = $row_q['citations'];
        echo $citations_q.',';
    }
        ?>]
        },{
            name: 'AACE International. Transactions of the Annual Meeting',
            data: [
                   <?php 
            $test_q = mysql_query("SELECT jour_id, journal, citations, year FROM journ_graph  WHERE jour_id = '2'");
                         while($row_q =  mysql_fetch_array($test_q)){
                            $year_q = $row_q['year'];
                            $citations_q =  $row_q['citations'];
                            echo $citations_q.',';
                         }
       ?>]
         },{
            name: 'AACL Bioflux',
            data: [
                   <?php 
              $test_q = mysql_query("SELECT jour_id, journal, citations, year FROM journ_graph WHERE jour_id = '3'");
    while($row_q = mysql_fetch_array($test_q)){
    $year_q = $row_q['year'];
    $citations_q = $row_q['citations'];
    echo $citations_q.',';
    }
         ?>]
        }
      ?>]
      ]
    });
   });

ここでは、ID を手動で入力しています。where句(参照コード)では、グラフが表示されています。以下を見てください: ここに画像の説明を入力 SELECT jour_id, journal, citations, year FROM journ_graph WHERE jour_id = '3' 上記のステートメントでは、ID を手動で入力していますが、最初のテーブル jour_id から取得する必要があります。

私もそれを試しましたが、うまくいきません。

   series: [
    <?php 
    $query_jour = mysql_query("SELECT jour_id, journal, citations, year FROM journ_graph");
                                                     $query_journ_count = mysql_num_rows($query_jour);
                                         while($row_journ = mysql_fetch_array($query_jour)){
                                         $jour_id = $row_journ['jour_id'];

  ?>
    {
            data: [<?php 
          $test_q = mysql_query("SELECT jour_id, journal, citations, year FROM journ_graph WHERE jour_id = '$jour_id'");
    while($row_q = mysql_fetch_array($test_q)){
        $year_q = $row_q['year'];
        $citations_q = $row_q['citations'];
        echo $citations_q.',';
    }
    ?>]
       }
  <?php
  }?>

2 つの while ループを使用しましたが、機能していません。どこが間違っているのか教えてください。助けてください。

4

1 に答える 1

0

データベースに対して 1 つのクエリを実行し、3 つのシリーズを含む配列を準備してから、PHP で json_encode() を実行し、JavaScript で AJAX を介してデータを取得することをお勧めします。より明確になります。

于 2013-10-07T09:55:22.017 に答える