2016-08-18 2 views
0

막대 그래프가 하이 레벨로 표시되어 제대로 표시되며 데이터는 mysql 테이블에 있습니다. 값을 전달하고 싶습니다 : ($ category [ 'data'] [] = $ r [ 'Assign_To']) 변수로 각 막대에 있으므로 막대를 클릭하면 변수에 포함 된이 값을 가져옵니다. 해당 페이지에서 사용하려면 새 페이지로 이동하십시오. 하이 챠트 웹 사이트에서 제공되는 예제는 테이블에있는 데이터를 사용하기 때문에 적합하지 않습니다. 하이 차트로 막대 그래프로 PHP 변수를 넘겨주세요

1이

는 그래프이다

$(document).ready(function() { 
     var options = { 
      chart: { 
       renderTo: 'container', 
       type: 'bar' 
      }, 
      title: { 
       text: 'EOP Postings Issues Chart', 
       x: -20 //center 
      }, 

      credits: { 
     enabled: false 
    }, 
      xAxis: { 
       categories: [] 
      }, 
      yAxis: { 
       min: 0, 
       title: { 
        text: 'Requests' 
       }, 
      }, 

      legend: { 
       layout: 'vertical', 
       align: 'right', 
       verticalAlign: 'top', 
       x: -10, 
       y: 100, 
       borderWidth: 0 
      }, 

      series: [] 
     } 

     $.getJSON("DataEobChart.php", function(json) { 
      options.xAxis.categories = json[0]['data']; 
      options.series[0] = json[1]; 

      chart = new Highcharts.Chart(options); 
     }); 
    }); 
  1. DataEobChart.php

    $dbc = @mysqli_connect('', '', '', ''); 
    $query = mysqli_query($dbc, "select *, count(Assign_To) as count,Assign_To from claims_follow_up.eob_posting where Status='open' group by Assign_To order by count desc"); 
    $category = array(); 
        $category['name'] = 'Month'; 
        $series1 = array(); 
        $series1['name'] = 'Number of issues assigned'; 
        while($r = mysqli_fetch_array($query)) { 
        $category['data'][] = $r['Assign_To']; 
    $series1['data'][] = $r['count']; 
    
        } 
    $result = array(); 
        array_push($result,$category); 
        array_push($result,$series1); 
    print json_encode($result, JSON_NUMERIC_CHECK); 
    mysqli_close($dbc); 
    
+0

PHP 파일에서 생성 된 JSON의 예를 제공 할 수 있습니까? 그러면 JSON 데이터를 사용할 수 있도록 HighChart 코드로 작업하는 것이 더 쉬울 것입니다. –

+0

DataEobChart.php는 json – Diasline

답변

1

plotOptions를라는 HighCharts 정의에 새 섹션을 추가 이 코드를 포함하는 :

 plotOptions: { 
      series: { 
       cursor: 'pointer', 
       point: { 
        events: { 
         click: function (event) { 
          var index = event.point.index; 
          var Assign_To = options.xAxis.categories[index]; 
          alert(Assign_To); 
          location.href = "NewPage.php?AssignTo=" + Assign_To; 
         } 
        } 
       } 
      } 
     }, 

클릭 이벤트 처리기를 제공합니다. 클릭 이벤트 처리기는 클릭 한 바를 기준으로 사용할 options.xAxis.categories[] 항목을 파악합니다. 그런 다음 결과를 알린 다음 AssignTo이라는 요청 문자열과 함께 NewPage.php 페이지로 이동합니다.

+0

입니다.이 새로운 섹션은 저를 그렇게 할 길에 올려 놓았습니다. 막대 하나를 클릭 할 때 NewPage로 이동하지만 변수는 보관되지 않습니다. 다음은 클릭 한 URL입니다. http : // localhost/bposssss/NewPage? AssignTo = undefined – Diasline

+0

이 문제를 해결하는 데 도움이 필요합니다. 첫째로, 나는'alert()'로 값을 보여주지 못하게하는 작은 문제를 수정했다. 이 새로운 코드를 사용해보십시오. 또한 디버그 콘솔의 결과를 확인하십시오. 'options.xAxis.categories [index]'에서 뭔가 잘못되었을 수도 있습니다. console.log로 놀고 당신이 찾은 것을 말해봐. –

+0

경고가 올바른 'Assign_To'값을 표시합니까? –

관련 문제