将值从 php 数组传输到 jquery


Transferring value from php array to jquery

数组 $data 2 用于制作图表,它包含我公司的产品名称。我想将 $data 2 中的值(即产品名称)分配给 jquery 数组"类别"而不是下面代码中列出的地方......?

<script type="text/javascript">
 $(function () {
 var chart;
 $(document).ready(function() {
    chart = new Highcharts.Chart({
        chart: {
            renderTo: 'container',
            type: 'column',
            margin: [ 50, 50, 100, 80]
        },
        title: {
            text: 'Product Selling Report'
        },

  <?php
  $sql="select productid,count(productid)as num from orderdetails group by productid order by num desc";
$res=mysql_query($sql);
$i=0;
   while($arr=mysql_fetch_array($res))
    {
    $rep=$arr['productid'];
    $sql2="select * from product where productid='$rep'";
    $res2=mysql_query($sql2);
    $arr2=mysql_fetch_array($res2);
    $data2[$i]=$arr2['productname'];
    $i=$i+1;
    }
     ?>
        xAxis: 
            categories: [
                'Tokyo',
                'Jakarta',
                'New York',
                'Seoul',
                'Manila',
                'Mumbai',
                'Sao Paulo',
                'Mexico City',
                'Buenos Aires',
                'Guangzhou',
                'Shenzhen',
                'Istanbul'
            ],
      },
      });
  });
   </script>
<script type="text/javascript">
 $(function () {
 var chart;
 $(document).ready(function() {
    chart = new Highcharts.Chart({
        chart: {
            renderTo: 'container',
            type: 'column',
            margin: [ 50, 50, 100, 80]
        },
        title: {
            text: 'Product Selling Report'
        },
        xAxis: 
            categories: [
  <?php
  $sql="select productid,count(productid)as num from orderdetails group by productid order by num desc";
$res=mysql_query($sql);
$i=0;
   while($arr=mysql_fetch_array($res, MYSQL_ASSOC))
    {
    $rep=$arr['productid'];
    $sql2="select * from product where productid='$rep'";
    $res2=mysql_query($sql2);
    $arr2=mysql_fetch_array($res2, MYSQL_ASSOC);
    echo "'".$arr2['productname']."','n";
    }
     ?>
            ],
      },
      });
  });
   </script>

json_encode($data2) 在 JS 中输出数组/映射的有效代码

 categories: <?= json_encode($data2) ?>,

试试这个。

xAxis: 
        categories: [
            <?php $str = "";
                  foreach($data2 as $data) {
                      $str .= $data.',';
                   }
                   $str = substr($str,0,-1);
                   echo $str;
        ],
  },
  });

});