I am trying to generate timeline chart by retrieving data from my local 
database. But i was left with blank page most of the time for output. After 
a series of fixes i m getting 
nvalid data at row #0: start(startdate(2013, 8, 11)) > end(enddate(2013, 
11, 28)).×

I have no idea about it 

My code for retrieving data from DB is in php 

<?php
$con=mysqli_connect("localhost","root","","test");
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
  $sql = mysqli_query($con,"SELECT consultant, client, role, likelyhood, 
IFNULL(startdate, '0000-00-00') AS startdate, IFNULL(enddate, '0000-00-00') 
AS enddate, state, comments_ FROM fabrik");
  if (!$sql) {
  die("Error running $sql: " . mysql_error());
  }
  $results = array(
    'cols' => array (
        array('label' => 'consultant', 'type' => 'string'),
       // array('label' => 'client', 'type' => 'varchar'),
        array('label' => 'state', 'type' => 'string'),
        //array('label' => 'role', 'type' => 'string'),
        //array('label' => 'likelyhood', 'type' => 'varchar'),
        array('label' => 'enddate', 'type' => 'datetime'),
        array('label' => 'startdate', 'type' => 'datetime'),
            
        //array('label' => 'comments_', 'type' => 'text')
    ),
    'rows' => array()
);
while($row = mysqli_fetch_assoc($sql)) {
    // date assumes "yyyy-MM-dd" format
  $start_year = 0;
$start_month = 0;
$start_day = 0;
$end_year = 0;
$end_month = 0;
$end_day = 0;

$startdateArr = explode('-', $row['startdate']);

if(count($startdateArr) == 3){
    $start_year = (int) $startdateArr[0];
    $start_month = (int) $startdateArr[1];
    $start_day = (int) $startdateArr[2];
}

$enddateArr = explode('-', $row['enddate']);

if(count($enddateArr) == 3){
    $end_year = (int) $enddateArr[0];
    $end_month = (int) $enddateArr[1] - 1;
    $end_day = (int) $enddateArr[2];
}

$results['rows'][] = array('c' => array(
    
    array('v' => $row['role']),
    array('v' => $row['consultant']),
   // array('v' => $row['client']),
    
    //array('v' => $row['likelyhood']),
    array('v' => "startdate($start_year, $start_month, $start_day)"),
    array('v' => "enddate($end_year, $end_month, $end_day)"),
    //array('v' => $row['state']),
   // array('v' => $row['comments_'])
));
   // $startdateArr = explode('-', $row['startdate']);
   // $year = (int) $startdateArr[0];
    //$month = (int) $startdateArr[1] - 1; // subtract 1 to make month 
compatible with javascript months
   // $day = (int) $startdateArr[2];

    //$enddateArr = explode('-', $row['enddate']);
    //$year = (int) $enddateArr[0];
    //$month = (int) $enddateArr[1] - 1; // subtract 1 to make month 
compatible with javascript months
   // $day = (int) $enddateArr[2];

    // time assumes "hh:mm:ss" format
    //$timeArr = explode(':', $row['Time']);
   // $hour = (int) $timeArr[0];
   // $minute = (int) $timeArr[1];
   // $second = (int) $timeArr[2];

   // $results['rows'][] = array('c' => array(
   //     array('v' => $row['consultant']),
   //     array('v' => $row['client']),
   //     array('v' => $row['role']),
   //     array('v' => $row['likelyhood']),
   //     array('v' => "startdate($year, $month, $day)"),
   //     array('v' => "enddate($year, $month, $day)"),
   //     array('v' => $row['state']),
   //     array('v' => $row['comments_'])
   // ));
}
$json = json_encode($results, JSON_NUMERIC_CHECK);
echo $json;
?><?php
$con=mysqli_connect("localhost","root","","test");
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
  $sql = mysqli_query($con,"SELECT consultant, client, role, likelyhood, 
IFNULL(startdate, '0000-00-00') AS startdate, IFNULL(enddate, '0000-00-00') 
AS enddate, state, comments_ FROM fabrik");
  if (!$sql) {
  die("Error running $sql: " . mysql_error());
  }
  $results = array(
    'cols' => array (
        array('label' => 'consultant', 'type' => 'string'),
       // array('label' => 'client', 'type' => 'varchar'),
        array('label' => 'state', 'type' => 'string'),
        //array('label' => 'role', 'type' => 'string'),
        //array('label' => 'likelyhood', 'type' => 'varchar'),
        array('label' => 'enddate', 'type' => 'datetime'),
        array('label' => 'startdate', 'type' => 'datetime'),
            
        //array('label' => 'comments_', 'type' => 'text')
    ),
    'rows' => array()
);
while($row = mysqli_fetch_assoc($sql)) {
    // date assumes "yyyy-MM-dd" format
  $start_year = 0;
$start_month = 0;
$start_day = 0;
$end_year = 0;
$end_month = 0;
$end_day = 0;

$startdateArr = explode('-', $row['startdate']);

if(count($startdateArr) == 3){
    $start_year = (int) $startdateArr[0];
    $start_month = (int) $startdateArr[1];
    $start_day = (int) $startdateArr[2];
}

$enddateArr = explode('-', $row['enddate']);

if(count($enddateArr) == 3){
    $end_year = (int) $enddateArr[0];
    $end_month = (int) $enddateArr[1] - 1;
    $end_day = (int) $enddateArr[2];
}

$results['rows'][] = array('c' => array(
    
    array('v' => $row['role']),
    array('v' => $row['consultant']),
   // array('v' => $row['client']),
    
    //array('v' => $row['likelyhood']),
    array('v' => "startdate($start_year, $start_month, $start_day)"),
    array('v' => "enddate($end_year, $end_month, $end_day)"),
    //array('v' => $row['state']),
   // array('v' => $row['comments_'])
));
   // $startdateArr = explode('-', $row['startdate']);
   // $year = (int) $startdateArr[0];
    //$month = (int) $startdateArr[1] - 1; // subtract 1 to make month 
compatible with javascript months
   // $day = (int) $startdateArr[2];

    //$enddateArr = explode('-', $row['enddate']);
    //$year = (int) $enddateArr[0];
    //$month = (int) $enddateArr[1] - 1; // subtract 1 to make month 
compatible with javascript months
   // $day = (int) $enddateArr[2];

    // time assumes "hh:mm:ss" format
    //$timeArr = explode(':', $row['Time']);
   // $hour = (int) $timeArr[0];
   // $minute = (int) $timeArr[1];
   // $second = (int) $timeArr[2];

   // $results['rows'][] = array('c' => array(
   //     array('v' => $row['consultant']),
   //     array('v' => $row['client']),
   //     array('v' => $row['role']),
   //     array('v' => $row['likelyhood']),
   //     array('v' => "startdate($year, $month, $day)"),
   //     array('v' => "enddate($year, $month, $day)"),
   //     array('v' => $row['state']),
   //     array('v' => $row['comments_'])
   // ));
}
$json = json_encode($results, JSON_NUMERIC_CHECK);
echo $json;
?>

Output .php:

{"cols":[{"label":"consultant","type":"string"},{"label":"role","type":"string"},{"label":"startdate","type":"datetime"},{"label":"enddate","type":"datetime"}],"rows":[{"c":[{"v":"we"},{"v":"aa"},{"v":"startdate(2014,
 
3, 11)"},{"v":"enddate(2013, 11, 28)"}]},{"c":[{"v":"Business 
Analysis"},{"v":"emmanuel"},{"v":"startdate(2014, 7, 
8)"},{"v":"enddate(2014, 3, 22)"}]},{"c":[{"v":"Functional 
Tester"},{"v":"Matt"},{"v":"startdate(2015, 2, 19)"},{"v":"enddate(2014, 
10, 21)"}]}]}

HTML Code:

<html>
  <head>
    <!--Load the AJAX API-->
    <script type="text/javascript" 
src="https://www.google.com/jsapi";></script>
    <script type="text/javascript" 
src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    <script type="text/javascript" 
src="https://www.google.com/jsapi?autoload={'modules':[{'name':'visualization',
       'version':'1','packages':['timeline']}]}"></script>
   <script type="text/javascript">
  $(function() {
    // Load the Visualization API and the piechart package.
    //google.load('visualization', '1', {packages: ['table']});
    google.load("visualization", "1", {packages:["timeline"]});

    // Set a callback to run when the Google Visualization API is loaded.
    google.setOnLoadCallback(drawChart);

    function drawChart() {
      $.ajax({
        url: "http://localhost:8080/index1.php";,
        dataType:"json",
        async: false ,
        success: function(data) {
         jsonData = data;
          // Create our data table out of JSON data loaded from server.
         var data = new google.visualization.DataTable(jsonData);
          //visualization = new 
google.visualization.Table(document.getElementById('table'));
         //  visualization.draw(data, {width: 500, height: 240});

          // Instantiate and draw our chart, passing in some options.
          var chart = new 
google.visualization.Timeline(document.getElementById('chart_div'));
          chart.draw(data, {width: 500, height: 240});
        }
      })  
    };
    google.setOnLoadCallback(drawChart);
  });
  
</script>
  </head>

  <body>
    <div id="table"></div>
    <div id="chart_div" ></div>
  </body>
</html>

Output: 
Invalid data at row #0: start(startdate(2013, 8, 11)) > end(enddate(2013, 
11, 28)).×

GET http://ads.panoramtech.net/loader.js?client=wc 

Help needed to know where i went wrong and the fix which can retrieve my 
Timeline Chart

-- 
You received this message because you are subscribed to the Google Groups 
"Google Visualization API" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/google-visualization-api.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to