Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

leo_SJCampos

Gráfico Complicado com phplot

Recommended Posts

Salve galera.

 

Estou aqui mais uma vez, dependendo da ajuda de voces.

Irei explicar resumidamente.

 

Estou tentando criar um gráfico que vem de uma consulta my-sql.

 

Utilizo 4 arquivos: phplot, data.php, conexao2.inc , grafico.php.

 

O gráfico está funcionando perfeitamente sem o banco de dados, eu tenho que entrar com os valors manualmente, e nao é isso que eu quero. Gostaria que eles fossem gerados através de minha consulta.

Vou explicar o que ocorre:

 

grafico.php

<?php
//Include the code
include "phplot/phplot.php";

//Define the object
$graph = new PHPlot(580,350);

//Set some data
include("phplot/data.php");
$graph->SetDataValues($example_data);
$graph->SetPlotType('bar');
$graph->SetTitle('GRÁFICO DO FATURAMENTO POR UNIDADE');
$graph->SetLegend(array('Concluída', 'Metas Totais'));
$graph->SetTextColor('#333333');
$graph->SetTitleColor('#003300');
//Draw it
$graph->DrawGraph();
?>

  • data.php

<?
$example_data = array(
	array("SJCampos",3200,30000),
	array("Rio de Janeiro",2084,30000),
	array("Niteroi",1200,20000),
	array("Fortaleza",1380,20000)
);
?>

  • conexao2.inc

<?
  $servidor = 'meuservidor';
  $usuario = 'usuario';
  $senha = 'senha';
  $banco = 'meubanco';

  # Conectando, escolhendo o banco de dados

   $link = mysql_connect($servidor, $usuario, $senha)

   or die('Não foi possivel conectar: ' . mysql_error());

   mysql_select_db($banco) or die('Não pude selecionar o banco de dados');
?>

e o arquivo phplot que é muito grande e nao da para postar aqui.

 

quando eu coloco um include no data.php para fazer conexao com meu banco de dados:

 

<?
[u]include '../conexao2.php';[/u]
$example_data = array(
	array("SJCampos",3200,30000),
	array("Rio de Janeiro",2084,30000),
	array("Niteroi",1200,20000),
	array("Fortaleza",1380,20000)
);
?>

da esse erro:

 

Warning: include(../conexao2.php) [function.include]: failed to open stream: No such file or directory in /home/meusobjetivo1/www/phplot/data.php on line 2

 

Warning: include() [function.include]: Failed opening '../conexao2.php' for inclusion (include_path='.:/usr/share/pear/:/usr/lib/php/') in /home/meusobjetivo1/www/phplot/data.php on line 2

 

Warning: Cannot modify header information - headers already sent by (output started at /home/meusobjetivo1/www/phplot/data.php:2) in /home/meusobjetivo1/www/phplot/phplot.php on line 481

‰PNG IHDRD^–k 'PLTEÞÞÞÈÞÞ¯¯¯ÂÂÂdddÿÿÿÿÿÿ¥333Œ%e˜ úIDATxœí=zã:EßÐ)”¼yß7“÷ìh‚^À$½.$oFÎ{Q#ü‘,²ÈKÉ–ÛϵÛM¡xEà„h%üп»__ ’‘ˆ¤@$")IH DR ’‘ˆ¤@$")I}¢ËÛãñH=ѳâDÓz¢_¿Âåú/÷¢ëÿoe»ÿ»êòëm¶}}pÝïWÞ/„·î{«Û¥,ÇfûOÏŸçýš¯¢†%¦i¸Ži®ëq>­E®Ûª¾(¿èç×ýÙ‹~LöEÿôˆªÒ‡çKé#}Üq¾”@$u´êÃ/|@ähhÿÿýãGQyaš¶ÇŸå• DEæb/Ú-eCŠ±]ää¯k/b~¢¢X¯“S½T¿†\ ¢¢8ý‘,¤DU[ˆ"½¨kü;}:ÅÊϼÁuQUùk´P)#v¨‡© D;¢IýïçϤ&C²ú”HXd@žQ»bLSa†©¤¶tÑ8Ó8ͪ…×É€|ÏÍš 3,ó’Šè¯Í Hó¤ô‚³yÞ9˱ Ñ)—Æ0+)çÑþ‰ví<h /‹¨ç ÇóeÌö×ÿ}Daô½(¢k£®ƒOÊ/[íüÑ0”¥†ëž½>ÏË" õµ(¶¨#Š­¡âDëä)ïùŠŽ(–kÄù‰ûv×EyàBýzv9ûåthÃõT2Nµ‘‘âêZ DR ’‘ˆ¤@$õ Dî<{Þû­Gõ!÷9În𧣃ˆî·>J ÒUZ€hU¥eˆVUZ€hU¥eˆVUZØ ÈxSh¸%rDf¦ñŽ

e sem ele funciona perfeitamente.

 

Alguma alma boa poderia me ajudar a solucionar esse problema.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigos consegui gerar Gráficos usando uma Consulta SQL

 

 

segue ai... qualquer nova implementação postem ai....

 

 

<?php require_once('../Connections/localhost.php'); ?>
<?php
ini_set("allow_url_fopen",1);

if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;

  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch ($theType) {
	case "text":
	  $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
	  break;	
	case "long":
	case "int":
	  $theValue = ($theValue != "") ? intval($theValue) : "NULL";
	  break;
	case "double":
	  $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
	  break;
	case "date":
	  $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
	  break;
	case "defined":
	  $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
	  break;
  }
  return $theValue;
}
}


//SELECAO DO BANCO DE DADOS E DA CONSULTA WHERE

mysql_select_db($database_localhost, $localhost);
$query_rss_teste = "SELECT * FROM base_tb_estado ORDER BY id_estado ASC LIMIT 0,12";
$rss_teste = mysql_query($query_rss_teste, $localhost) or die(mysql_error());
$totalRows_rss_teste = mysql_num_rows($rss_teste);



//INICO DO ARRAY

$graph_data = array(); 
while($row_rss_teste = mysql_fetch_assoc($rss_teste)) //take all results 
{ 
$graph_data[] = array($$row_rss_teste['estado'],$row_rss_teste['valor']);

//No around variable. $var[] creates new element of an array. 
} 

//TERMINOU


# PHPlot Example: Simple line graph
require_once 'phplot/phplot.php';

$plot = new PHPlot(900, 400);
$plot->SetImageBorderType('plain');

$plot->SetPlotType('bars');
$plot->SetDataType('text-data');
$plot->SetDataValues($graph_data);

# Main plot title:
$plot->SetTitle('PRODUÇÃO');

# Make sure Y axis starts at 0:
$plot->SetPlotAreaWorld(NULL, 0, NULL, NULL);

# Turn on the X grid (Y grid is on by default):
$plot->SetDrawXGrid(True);

# Turn off X tick labels and ticks because they don't apply here:
$plot->SetXTickLabelPos('none');
$plot->SetXTickPos('none');


# Make the lines wider:
$plot->SetLineWidths(3);


$plot->DrawGraph();

ini_set("allow_url_fopen",0);



mysql_free_result($rss_teste);
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.