Foros del Web » Programando para Internet » PHP »

Problema en consulta para cargar grafico de estadisticas

Estas en el tema de Problema en consulta para cargar grafico de estadisticas en el foro de PHP en Foros del Web. hola como estan todos, e vuelto de neuvo con un problema para poder mostrar un grafico de estadisticas, la consulta la realizo mediante un formulario ...
  #1 (permalink)  
Antiguo 19/02/2013, 09:59
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Problema en consulta para cargar grafico de estadisticas

hola como estan todos, e vuelto de neuvo con un problema para poder mostrar un grafico de estadisticas, la consulta la realizo mediante un formulario donde realizo una consulta de todos los periodos de becas creados verdad, de alli envio la variable a un archivo llamado graficos.php pero alli no es donde tengo el grafico en si alli es donde hace el llamado al archivo.php q es donde esta el grafico, y nos e como llevar la variable a ese otro archivo, ya q en el archivo grafico.php esta el llamado al archivo pie.php de esta forma

Código PHP:
Ver original
  1. <?php
  2. header('Cache-Control: no-cache, must-revalidate');
  3. require_once 'ofc/php-ofc-library/open_flash_chart_object.php';
  4. // Creamos el objeto Flash
  5. // Asignamos ancho y alto, nombre y la dirección del archivo que grafica.
  6. require_once('../conexion.php');
  7. conectarse();
  8.  
  9. $periodo =$_POST['periodo'];
  10.  
  11. open_flash_chart_object( 600, 380, 'Pie.php',false ,"ofc/");
  12. ?>

en la ultima linea es donde llamo al archivo pie.php q es dodne se realiza las consultas para calcular la estadisticas para mostrar en el grafico, la pregunta es como podria hacer q me muestre la estadisticas es decir q la variable q envie desde el select de busqueda.php me la apse a grafico.php y a pie.php
  #2 (permalink)  
Antiguo 19/02/2013, 11:14
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 9 meses
Puntos: 43
Respuesta: Problema en consulta para cargar grafico de estadisticas

Buenas,

No se como funciona la funcion open_flash_chart_object(...), pero podrias realizar una pequeña modificacion a la funcion, y pasarle un array de valores, que es donde irian esos valores que necesitas en pie.php

$arrayParams = array('value1'=>'1','value2'=>'12');
open_flash_chart_object(...,$arrayParams);

Y entonces dentro de esa funcion trabajas con esos parametros, ahora como no se como trabaja esa funcion no se que hacer dentro de ella,

Pero si ella lo que realiza es incluir el Pie.php, simplemente con tener declaro la variable $arrayParams y dentro de Pie.php utilizar la misma variable $arrayParams debe funcionar,

Pero como te dije no se como funciona estas funciones, esto son solo suposiciones, segun como trabaje se pudieran hacer otras cosas o aplicar esta que te explique

Saludos
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..
  #3 (permalink)  
Antiguo 19/02/2013, 11:26
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

hola muchas gracais por responder si asi mismo es la variable q envio desde el formulario q es $eriodo la recibe el archivo grafico.php pero la grafica se realiza el claculo y las consultas es el archivo pie.php pero grafico.php hace el llamdo de ese archivo con esta funcion

Código PHP:
Ver original
  1. open_flash_chart_object( 600, 380, 'Pie.php',false ,"ofc/");
  #4 (permalink)  
Antiguo 19/02/2013, 11:29
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

pero lo q no entendi bien fue esto como meter los variables de la avriable $periodo q recibo de la consulta aqui

Código PHP:
Ver original
  1. $arrayParams = array('value1'=>'1','value2'=>'12');
  2. open_flash_chart_object(...,$arrayParams);
  #5 (permalink)  
Antiguo 19/02/2013, 11:39
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 9 meses
Puntos: 43
Respuesta: Problema en consulta para cargar grafico de estadisticas

Buenas,

Esa es una posible solucion, para hacerle llegar los valores a Pie.php, pero sin ver lo que hace la funcion open_flash_chart_object(), no se que aconsejarte


Saludos
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..
  #6 (permalink)  
Antiguo 19/02/2013, 12:00
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

esto es lo q hace esa funcion observa

Código PHP:
Ver original
  1. function open_flash_chart_object( $width, $height, $url, $use_swfobject=true, $base='' )
  2. {
  3.     //
  4.     // stream the HTML into the page
  5.     //
  6.     echo _ofc( $width, $height, $url, $use_swfobject, $base );
  7. }
  #7 (permalink)  
Antiguo 19/02/2013, 12:02
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

la funcion declara el ancho y largo del cuadro donde mostrar la grafica, la url donde pasara o llamaria el archivo en este caso seria pie.php, el use no es necesario, y la base es la entrada
  #8 (permalink)  
Antiguo 19/02/2013, 12:10
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 9 meses
Puntos: 43
Respuesta: Problema en consulta para cargar grafico de estadisticas

Buenas,

Y seguimos hacia dentro

que hace _ofc(...)

Saludos
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..
  #9 (permalink)  
Antiguo 19/02/2013, 12:15
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

pues la verdad ni idea jejeje eso es de una libreria, para hacer el llamado del grafico ya q ofc es una caropeta y alli se declara asi ofc/ es porq tiene una funcion aparte q hace el llado a otro archivo para crear la grafica
  #10 (permalink)  
Antiguo 19/02/2013, 12:32
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 9 meses
Puntos: 43
Respuesta: Problema en consulta para cargar grafico de estadisticas

Buenas,

Si dentro de la funcion open_flash_chart_object(...) no incluye ninguna libreria, la funcion
_ofc(...) debe estar dentro de:
ofc/php-ofc-library/open_flash_chart_object.php

busca a ver

Saludos
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..
  #11 (permalink)  
Antiguo 19/02/2013, 12:39
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

el archivo grafico.php tiene el include al inicio de esa libreria observa como esta


require_once 'ofc/php-ofc-library/open_flash_chart_object.php';
  #12 (permalink)  
Antiguo 19/02/2013, 12:47
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 9 meses
Puntos: 43
Respuesta: Problema en consulta para cargar grafico de estadisticas

Cita:
Iniciado por ruben_chirinos_1985 Ver Mensaje
el archivo grafico.php tiene el include al inicio de esa libreria observa como esta


require_once 'ofc/php-ofc-library/open_flash_chart_object.php';
Buenas,

A eso me referia, que busques dentro de ese archivo la funcion _ofc(...)


Saludos
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..
  #13 (permalink)  
Antiguo 19/02/2013, 12:55
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

esta es la funcion mira

function _ofc( $width, $height, $url, $use_swfobject, $base )
{
  #14 (permalink)  
Antiguo 19/02/2013, 13:18
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 9 meses
Puntos: 43
Respuesta: Problema en consulta para cargar grafico de estadisticas

Cita:
Iniciado por ruben_chirinos_1985 Ver Mensaje
esta es la funcion mira

function _ofc( $width, $height, $url, $use_swfobject, $base )
{
Buenas,
eso que me muestras se sabe a simple vista, lo que se necesita es como esa funcion utiliza a Pie.php


Saludos
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..
  #15 (permalink)  
Antiguo 19/02/2013, 13:27
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

ues disculpame pero la verdad no tengo ni idea de como tratar esa parte alli
  #16 (permalink)  
Antiguo 19/02/2013, 13:42
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 9 meses
Puntos: 43
Respuesta: Problema en consulta para cargar grafico de estadisticas

Buenas,

Muestra el contenido de la funcion y nada mas,

Saludos
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..
  #17 (permalink)  
Antiguo 19/02/2013, 13:49
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

observa todo este es el contenido del archivo

Código PHP:
Ver original
  1. <?php
  2.  
  3. function open_flash_chart_object_str( $width, $height, $url, $use_swfobject=true, $base='' )
  4. {
  5.     //
  6.     // return the HTML as a string
  7.     //
  8.     return _ofc( $width, $height, $url, $use_swfobject, $base );
  9. }
  10.  
  11. function open_flash_chart_object( $width, $height, $url, $use_swfobject=true, $base='' )
  12. {
  13.     //
  14.     // stream the HTML into the page
  15.     //
  16.     echo _ofc( $width, $height, $url, $use_swfobject, $base );
  17. }
  18.  
  19. function _ofc( $width, $height, $url, $use_swfobject, $base )
  20. {
  21.     //
  22.     // I think we may use swfobject for all browsers,
  23.     // not JUST for IE...
  24.     //
  25.     //$ie = strstr(getenv('HTTP_USER_AGENT'), 'MSIE');
  26.    
  27.     //
  28.     // escape the & and stuff:
  29.     //
  30.     $url = urlencode($url);
  31.    
  32.     //
  33.     // output buffer
  34.     //
  35.     $out = array();
  36.    
  37.     //
  38.     // check for http or https:
  39.     //
  40.     if (isset ($_SERVER['HTTPS']))
  41.     {
  42.         if (strtoupper ($_SERVER['HTTPS']) == 'ON')
  43.         {
  44.             $protocol = 'https';
  45.         }
  46.         else
  47.         {
  48.             $protocol = 'http';
  49.         }
  50.     }
  51.     else
  52.     {
  53.         $protocol = 'http';
  54.     }
  55.    
  56.     //
  57.     // if there are more than one charts on the
  58.     // page, give each a different ID
  59.     //
  60.     global $open_flash_chart_seqno;
  61.     $obj_id = 'chart';
  62.     $div_name = 'flashcontent';
  63.    
  64.     //$out[] = '<script type="text/javascript" src="'. $base .'js/ofc.js"></script>';
  65.    
  66.     if( !isset( $open_flash_chart_seqno ) )
  67.     {
  68.         $open_flash_chart_seqno = 1;
  69.         $out[] = '<script type="text/javascript" src="'. $base .'js/swfobject.js"></script>';
  70.     }
  71.     else
  72.     {
  73.         $open_flash_chart_seqno++;
  74.         $obj_id .= '_'. $open_flash_chart_seqno;
  75.         $div_name .= '_'. $open_flash_chart_seqno;
  76.     }
  77.    
  78.     if( $use_swfobject )
  79.     {
  80.     // Using library for auto-enabling Flash object on IE, disabled-Javascript proof  
  81.     $out[] = '<div id="'. $div_name .'"></div>';
  82.     $out[] = '<script type="text/javascript">';
  83.     $out[] = 'var so = new SWFObject("'. $base .'open-flash-chart.swf", "'. $obj_id .'", "'. $width . '", "' . $height . '", "9", "#FFFFFF");';
  84.     //$out[] = 'so.addVariable("width", "' . $width . '");';
  85.     //$out[] = 'so.addVariable("height", "' . $height . '");';
  86.     $out[] = 'so.addVariable("data", "'. $url . '");';
  87.     $out[] = 'so.addParam("allowScriptAccess", "sameDomain");';
  88.     $out[] = 'so.write("'. $div_name .'");';
  89.     $out[] = '</script>';
  90.     $out[] = '<noscript>';
  91.     }
  92.  
  93.     $out[] = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="' . $protocol . '://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" ';
  94.     $out[] = 'width="' . $width . '" height="' . $height . '" id="ie_'. $obj_id .'" align="middle">';
  95.     $out[] = '<param name="allowScriptAccess" value="sameDomain" />';
  96.     $out[] = '<param name="movie" value="'. $base .'open-flash-chart.swf?width='. $width .'&height='. $height . '&data='. $url .'" />';
  97.     $out[] = '<param name="quality" value="high" />';
  98.     $out[] = '<param name="bgcolor" value="#FFFFFF" />';
  99.     $out[] = '<embed src="'. $base .'open-flash-chart.swf?data=' . $url .'" quality="high" bgcolor="#FFFFFF" width="'. $width .'" height="'. $height .'" name="'. $obj_id .'" align="middle" allowScriptAccess="sameDomain" ';
  100.     $out[] = 'type="application/x-shockwave-flash" pluginspage="' . $protocol . '://www.macromedia.com/go/getflashplayer" id="'. $obj_id .'"/>';
  101.     $out[] = '</object>';
  102.  
  103.     if ( $use_swfobject ) {
  104.     $out[] = '</noscript>';
  105.     }
  106.    
  107.     return implode("\n",$out);
  108. }
  109. ?>
  #18 (permalink)  
Antiguo 19/02/2013, 13:53
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

bueno dejame explicarte mejor ese q te pase es la libreria open_flash_chart_object.php, este es todo el archivo grafico.php

Código PHP:
Ver original
  1. <?php
  2.     header('Cache-Control: no-cache, must-revalidate');
  3.     require_once 'ofc/php-ofc-library/open_flash_chart_object.php';
  4.     // Creamos el objeto Flash
  5.     // Asignamos ancho y alto, nombre y la dirección del archivo que grafica.
  6.     require_once('../conexion.php');
  7.     conectarse();
  8.      
  9.     $periodo =$_POST['periodo'];
  10.      
  11.     open_flash_chart_object( 600, 380, 'Pie.php',false ,"ofc/");
  12.     ?>

y este es el pie.php

Código PHP:
Ver original
  1. <?php
  2.  
  3.  
  4. require_once 'ofc/php-ofc-library/open-flash-chart.php';
  5.  
  6.  
  7. // requiero la librería para graficar
  8. // datos para el gráfico, obtengo el total y el porcentaje
  9. // los valores son los visitantes por país
  10. require_once('../conexion.php');
  11. conectarse();
  12.  
  13.  
  14.  
  15. $sql=mysql_query("select count(cod_beca) as cantidad from solicitud_beca where periodo = '".$periodo."'") or  die("Problemas en el select:".mysql_error());
  16. $reg=mysql_fetch_array($sql);
  17.  
  18. $sql1=mysql_query("select count(cod_beca) as cantidad from solicitud_beca where cod_beca = '01' and periodo = '".$periodo."'") or  die("Problemas en el select:".mysql_error());
  19. $reg1=mysql_fetch_array($sql1);
  20.  
  21. $sql2=mysql_query("select count(cod_beca) as cantidad from solicitud_beca where cod_beca = '02' and periodo = '".$periodo."'") or  die("Problemas en el select:".mysql_error());
  22. $reg2=mysql_fetch_array($sql2);
  23.  
  24. $sql3=mysql_query("select count(cod_beca) as cantidad from solicitud_beca where cod_beca = '03' and periodo = '".$periodo."'") or  die("Problemas en el select:".mysql_error());
  25. $reg3=mysql_fetch_array($sql3);
  26.  
  27. $sql4=mysql_query("select count(cod_beca) as cantidad from solicitud_beca where cod_beca = '04' and periodo = '".$periodo."'") or  die("Problemas en el select:".mysql_error());
  28. $reg4=mysql_fetch_array($sql4);
  29.  
  30. $sql5=mysql_query("select count(cod_beca) as cantidad from solicitud_beca where cod_beca = '05' and periodo = '".$periodo."'") or  die("Problemas en el select:".mysql_error());
  31. $reg5=mysql_fetch_array($sql5);
  32.  
  33. $sql6=mysql_query("select count(cod_beca) as cantidad from solicitud_beca where cod_beca = '06' and periodo = '".$periodo."'") or  die("Problemas en el select:".mysql_error());
  34. $reg6=mysql_fetch_array($sql6);
  35.  
  36. $total = $reg['cantidad'];
  37. $ini   = round(($reg1['cantidad'] * 100) / $total);
  38. $pri   = round(($reg2['cantidad'] * 100) / $total);
  39. $bas   = round(($reg3['cantidad'] * 100) / $total);
  40. $med   = round(($reg4['cantidad'] * 100) / $total);
  41. $div   = round(($reg5['cantidad'] * 100) / $total);
  42. $otr   = round(($reg6['cantidad'] * 100) / $total);
  43.  
  44. // cargo los porcentajes en un arreglo
  45. $data = array($ini, $pri, $bas, $med, $div, $otr);
  46. // Creo un objeto de la clase graph
  47. $grafico = new graph();
  48. // Asigno propiedades al objeto
  49. // Transparencia, fuente de letras.
  50. $grafico->pie(100, '#505050', '{font-size: 12px; color: #404040;');
  51. // Asigno los valores al gráfico
  52. // Valores, Referencias y enlaces (en este caso un alert)
  53. $grafico->pie_values($data, array('Inicial','Primaria', 'Basica','Media', 'Diversificada', 'Otras'), $links);
  54. // Asigno colores a cada parte del gráfico
  55. $grafico->pie_slice_colours(array('#FF0000','#0000FF','#C79810','#009966', '#FFFF00', '#33FF00'));
  56. // tool tip
  57. $grafico->set_tool_tip('#x_label#<br>#val#%');
  58. // Título general del gráfico con formato
  59. $grafico->title('Porcentaje de Solicitudes de Becas',
  60.                 '{font-size:20px;
  61.                   color: #FFFFFF;
  62.                   margin: 5px;
  63.                   background-color: #505050;
  64.                   padding:5px;
  65.                   padding-left: 20px; p
  66.                   adding-right: 20px;}'
  67.                );
  68. // Muestro el gráfico en pantalla
  69. echo $grafico->render();
  70.    
  71.  
  72. ?>
  #19 (permalink)  
Antiguo 19/02/2013, 14:11
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

bueno amigo la verdad muchas gracias, ya arregle el probelma lo trabaje haciendo de la variable post q fuera como session, la recibi en el archivo grafico.php normal y la transforme como una variable session y asi la envie para el archivo pie.php y la recibi como session y resulto exitosamente, muchas gracais por tu ayuda en verdad mil gracias por tu colaboracion
  #20 (permalink)  
Antiguo 19/02/2013, 14:21
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 9 meses
Puntos: 43
Respuesta: Problema en consulta para cargar grafico de estadisticas

Buenas,

Esa es una buena solucion,

Yo te iba a proponer esta:

1 Prueba

Esto haslo en grafico.php

define('Periodo',$_POST['periodo']);
y en el

pie.php

if(defined('Periodo'))
$periodo = Periodo;


2 Prueba


Esto haslo en grafico.php
$periodo = $_POST['periodo'];

y en el

pie.php
$periodo = $GLOBAL['periodo'];

Saludos
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..
  #21 (permalink)  
Antiguo 19/02/2013, 15:46
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema en consulta para cargar grafico de estadisticas

Vaya si en eso tienes razon muy buien solucion esa q me diste es casi igual a la q yo hice pero la tuya es ams especifica gracias amigo en verdad
  #22 (permalink)  
Antiguo 20/02/2013, 06:51
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 9 meses
Puntos: 43
Respuesta: Problema en consulta para cargar grafico de estadisticas

Buenas,

Aunque creo que la mejor solucion, es la que a continuacion te comento, la cual debes probar,

En el archivo Pie.php solo debes poner

Código PHP:
$periodo $_POST['periodo']; 
ya que $_POST es superglobal y esta disponible en cualquier parte del script http://www.php.net/manual/es/reserve...ables.post.php


Saludos,
__________________
"No te preocupes si no funciona bien. Si todo lo hiciera, no tendrías trabajo."
"El problema no es no saber, sino no saber quién sabe"
..::Con Karma se piensa mejor::..

Etiquetas: estadisticas, formulario, grafico, select
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:14.