Foros del Web » Programando para Internet » PHP »

No genera la grafica con phplot

Estas en el tema de No genera la grafica con phplot en el foro de PHP en Foros del Web. hola, estoy intentando hacer una grafica con phplot, pero no he podido, porque cada vez que lo intento, me arroja un warning que me dice ...
  #1 (permalink)  
Antiguo 07/02/2006, 16:04
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.411
Antigüedad: 16 años, 6 meses
Puntos: 20
No genera la grafica con phplot

hola, estoy intentando hacer una grafica con phplot, pero no he podido, porque cada vez que lo intento, me arroja un warning que me dice qeu algo esta mal en uno de los headers que viene en el codigo de phplot, no se que pasa y la verdad es que necesito hacer esas graficas lo antes posible, quien me puede ayudar?
__________________
Say no more.......
  #2 (permalink)  
Antiguo 07/02/2006, 16:12
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 12 años, 9 meses
Puntos: 33
Hola no soy usuario de phplot pero el error que comentas sucede normalmente porque no se permiten salidas al explorador como echo o etiquetas tipo <html> antes de tu llamado a phplot....
  #3 (permalink)  
Antiguo 07/02/2006, 17:06
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.411
Antigüedad: 16 años, 6 meses
Puntos: 20
y entonces en ese caso que debo hacer?
__________________
Say no more.......
  #4 (permalink)  
Antiguo 07/02/2006, 19:07
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Debes crear scripts PHP que generen tu gráfico y llamarlos en tus scripts PHP o pàginas HTML en general con un tag de imagen tipo:

<img src="genera_Grafico.php">

El código de "genera_Grafico.php" no ha de contener NADA de HTML .. ni espacios antes de < ? ni al final de tu último ? > .. Todo eso es lo que "alega" la función header() cuando la usas.

Por cierto .. si tienes problemas .. con un mensaje de error, por favor no intentes interpretarlo tu mismo: coloca el mensaje de error y el código completo que usas además de indicar la línea concreta que origina el problema. Justamente en ese tipo de mensajes de error de "header" (cabeceras) dice claramente donde tienes la "salida" que estás originando.

Un saludo,
  #5 (permalink)  
Antiguo 07/02/2006, 22:10
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.411
Antigüedad: 16 años, 6 meses
Puntos: 20
pues bien el script que tengo es:

Código PHP:
<?
   
include_once("../phplot/phplot.php");
   
$data=
      array(
         array(
"label1",2.4,3,
               
3.7,4,5.1),
         array(
"label2",3,4,5,
               
6,7),
         array(
"label3",1.1,2.2,
               
3.3,4.4,5.5),
         array(
"label4",1.7,2,3,
               
1.4,2),
     );
   
$graph = new PHPlot;
   
$graph->SetDataValues($data);
   
$graph->DrawGraph();
?>
el error es:
Cita:

Warning: Cannot modify header information - headers already sent by (output started at f:\archivos de programa\easyphp1-8\www\graficos\graf1.php:9) in f:\archivos de programa\easyphp1-8\www\phplot\phplot.php on line 1090

Warning: Cannot modify header information - headers already sent by (output started at f:\archivos de programa\easyphp1-8\www\graficos\graf1.php:9) in f:\archivos de programa\easyphp1-8\www\phplot\phplot.php on line 1091

Warning: Cannot modify header information - headers already sent by (output started at f:\archivos de programa\easyphp1-8\www\graficos\graf1.php:9) in f:\archivos de programa\easyphp1-8\www\phplot\phplot.php on line 1092

Warning: Cannot modify header information - headers already sent by (output started at f:\archivos de programa\easyphp1-8\www\graficos\graf1.php:9) in f:\archivos de programa\easyphp1-8\www\phplot\phplot.php on line 1093

Warning: Cannot modify header information - headers already sent by (output started at f:\archivos de programa\easyphp1-8\www\graficos\graf1.php:9) in f:\archivos de programa\easyphp1-8\www\phplot\phplot.php on line 1099
‰PNG  IHDRXEëîª9PLTEÂÂÂ’’’ÿÿÿ¾¾¾‡ÎëWž»ÿÏÿ¥ÏuÿÏÿÏî‚î ¾R¾ðÿÿÀÏϺ¬„²IDATxœíÛr«:Dw…ãJQüÿÿžÄØ„‘Ô­™½ H| ´<’eþ} AàŸuDŸH,AAb KPX‚‚Ä$– ±‰%(¤ÅÖBtÂK‰%€H,AAb KPX‚‚Ä$– ±‰%(H,AAb KPX‚‚Ä$– ±‰%(H,AAb KPX‚‚Ä$– ±‰%(H,AAb KPX‚‚Ä$– ð&ÖðÃóùaï...
y las lineas de phplot donde se dice esta el problema son:

de la 1089 a la 1094

Código PHP:
 if ( (! $this->browser_cache) && (! $this->is_inline)) {
            
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
            
header('Last-Modified: ' gmdate('D, d M Y H:i:s') . 'GMT');
            
header('Cache-Control: no-cache, must-revalidate');
            
header('Pragma: no-cache');
        } 
y de la 1096 a la 1100

Código PHP:
       switch($this->file_format) {
        case 
'png':
            if (! 
$this->is_inline) {
                
Header('Content-type: image/png');
            } 
por cierto Cluster podrias explicarmme bien como usar entonces lo del <img src="..."> es decir, este lo ubico en un documento html normal o como hago?
__________________
Say no more.......
  #6 (permalink)  
Antiguo 08/02/2006, 09:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
El error te dice:

Cita:
output started at f:\archivos de programa\easyphp1-8\www\graficos\graf1.php:9
que en la línea 9 de "graf1.php" tienes algo de salida hacia el navegador, no sé si algo de HTML o qué (habría que ver ese código de ese script completo .. Si es lo que pusistes ... concreta que es lo que pusistes y no hay nada más). OJO con los espacios y saltos de línea antes o despues de < ? .. ?> también son considerados como "salida".

El uso del tag de imagen para llamar a tu script PHP que realice el proceso de generación de tus gráficas, tan sólo se trata de aislar ese código que genera la gráfica, guardarlo con un nombre .php y llamarlo por un tag de imagen como te mostré. De hecho así es como deberías usarlo. Un script que genera el gráfico y -otro- que lo llame para poder "mezclarlo" con el resto de HTML que necesites para componer tu página HTML completa.

Un saludo,
  #7 (permalink)  
Antiguo 08/02/2006, 10:05
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.411
Antigüedad: 16 años, 6 meses
Puntos: 20
pues bien, el codigo de graf1.php

Código PHP:
<?
   
include_once("../phplot/phplot.php");
   
$data=
      array(
         array(
"label1",2.4,3,
               
3.7,4,5.1),
         array(
"label2",3,4,5,
               
6,7),
         array(
"label3",1.1,2.2,
               
3.3,4.4,5.5),
         array(
"label4",1.7,2,3,
               
1.4,2),
     );
   
$graph = new PHPlot;
   
$graph->SetDataValues($data);
   
$graph->DrawGraph();
?>
y la linea 9 es donde se abre el codigo php o sea <?

no logro entender bien lo de los espacios, es decir se debe hacer codigo sin espacio entre lineas o sin ninguna clase de espacio?

y lo del <img scr> intente hacerlo, pero no me dio resultado
__________________
Say no more.......
  #8 (permalink)  
Antiguo 08/02/2006, 10:09
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 12 años, 9 meses
Puntos: 33
El problema esta en que no debe haber ninguna salida hacia el explorador como te comentaba con anterioridad cluster y yo. No puede haber ninguna etiqueta tipo <html> o echo dentro de tu código.
  #9 (permalink)  
Antiguo 08/02/2006, 11:20
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
El tema de los "espacios" o "saltos de línea" se refiere a antes de < ?

Un saludo,
  #10 (permalink)  
Antiguo 08/02/2006, 11:45
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.411
Antigüedad: 16 años, 6 meses
Puntos: 20
ok, perfecto, jeje casi que no la cojo pero ya funciona bien, era cuestion de quitarle todas las etiquetas de html, mucchas gracias de nuevo
__________________
Say no more.......
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 17:11.