2013-10-02 29 views
0

如何在条形图图像呼应日期如何显示在条形图像MySQL的日期

我想呼应日期这里

$xname='For The month of $a to $b'; //X-axis Name 

我怎么能做到这一点

请帮我解决这个问题问题感谢

这是条形图代码

barchart.php

<?php 
include 'config.php'; 
$link=mysql_connect("$hostname","$username","$password")or 
die('Could not connect: ' . mysql_error()); 
mysql_select_db("$dbname",$link); 
function formatMoney($number, $fractional=false) { 
    if ($fractional) { 
     $number = sprintf('%.2f', $number); 
    } 
    while (true) { 
     $replaced = preg_replace('/(-?\d+)(\d\d\d)/', '$1,$2', $number); 
     if ($replaced != $number) { 
      $number = $replaced; 
     } else { 
      break; 
     } 
    } 
    return $number; 
}  
$a=$_POST['from']; 
$b=$_POST['to']; 


include 'create.php'; 
    $sql="SELECT division,sum(amount) AS amount FROM $tablename where monthdate BETWEEN '$a' AND '$b' GROUP BY division"; // Give Your field Name 
    $result = mysql_query($sql); 
    $graphtitle='BarChart ';//Graph Title 
    $xname='For The month of $a to $b'; //X-axis Name 
    $yname='Values';//y-axis name 
    $img_width=1300;//image height 
    $img_height=600;//image width 
    $margins=70; 
    $ymargin=6; 
    $count=mysql_affected_rows(); 
    $graph_width=$img_width - $margins * 2; 
    $graph_height=$img_height - $margins * 2; 
    $bar_width=5; 
    $total_bars=$count; 
    $gap= ($graph_width- $total_bars * $bar_width)/($total_bars +1); 
    $img=imagecreate($img_width,$img_height); 
    include 'barcolor.php'; 
    imagefilledrectangle($img,0,0,0,0,$bag_color); 
    imageline($img,$margins,$img_height-45,$img_width-20,$img_height-45,$xyline_color); 
    imageline($img,$margins,$ymargin,$margins,$img_height-45,$xyline_color); 
    $maxvalue="select max(monthdate) as amount from $tablename";//Give your field name for Y axis 
    $max=mysql_query($maxvalue); 
    while($inf1= mysql_fetch_array($max)) 
     { 
     $ratio=$graph_height/$inf1[0]; 
     } 
    $horizontal_lines=8; 
    $horizontal_gap=($img_height+20)/$horizontal_lines; 
    for($j=1;$j<=$horizontal_lines;$j++) 
    { 
      $y=($img_height-48) - $horizontal_gap * $j ; 
      //imageline($img,$margins+1,$y,$img_width-20,$y,$hline_color); 
      $v=intval($horizontal_gap * $j /$ratio); 
      imagestring($img,2,$margins-30,$y-5,$v,$values_color); 
    } 
    $i=0; 
    while($inf = mysql_fetch_array($result)) 
     { 
      $x1=($margins+10) + ($gap+5) + $i * ($gap+$bar_width) ; 
      $x2=$x1+$bar_width; 
      $y1=($img_height-46)- ceil($inf[1] * $ratio) ; 
      $y2=($img_height-46); 
      imagestring($img,2,$x1+1,$y1-15,$inf[1],$values_color); 
      imagestring($img,2,$x2-23,$img_height-43,$inf[0],$values_color); 
      imagefilledrectangle($img,$x1,$y1,$x2,$y2,$bar_color); // Draw bar 
     $i++; 
     } 
    imagestring($img,8, ($img_width-$margin)/2, 0, $graphtitle, $txt_color); 
    imagestring($img,5, ($img_width-$margin)/2, $img_height-($ymargin+10), $xname, $txt_color); 
    imagestringup($img,5,10,($img_height-$ymargin)/2, $yname, $txt_color); 
    //header('Content-type: image/png'); 
    imagepng($img, 'barchart.jpg'); 
    echo "<div style='border:1px solid #d8d8d8;width:$img_width'><img src='barchart.jpg'></div>"; 
    ?> 

这里是barcolor.php

<?php 
$bag_color=imagecolorallocate($img,246,246,246);//Baground color 
$xyline_color=imagecolorallocate($img,135,135,135);//XY-axis color 
$bar_color=imagecolorallocate($img,172,212,123);//Bar color 
$values_color=imagecolorallocate($img,2,2,2);//values color 
$txt_color=imagecolorallocate($img,227,113,39);//text color 
?> 

,这里是config.php文件

<?php 

$username = "root"; 
$password = ""; 
$hostname = "localhost"; 
     $dbname = "car"; 
    $tablename = "fuel"; 

?> 
+0

使用像'$ XName的双引号=“对于$ a到$ b的月份;' –

+0

那么我该如何做这个请帮我 – user2468472

+0

复制粘贴? –

回答

0

使用双引号像$xname="For The month of $a to $b";