Академический Документы
Профессиональный Документы
Культура Документы
función conectar ()
función desconectar BD($conexión)
función getArraySQL($sql)
función insertRandom ()
función getAllInfo()
<?php
clase RandomTable{
public $IDr = 0 ;
function conectarBD(){
$server = "localhost";
$usuario = "root";
$pass = "";
$BD = "GeekyTheoryBD";
if(!$conexion){
function desconectarBD($conexion){
$close = mysqli_close($conexion);
if(!$close){
return $close;
function getArraySQL($sql){
//Creamos la conexión
$conexion = $this->conectarBD();
//generamos la consulta
$rawdata = array();
$i=0;
while($row = mysqli_fetch_array($result))
$rawdata[$i] = $row;
$i++;
$this->desconectarBD($conexion);
//devolvemos rawdata
return $rawdata;
function insertRandom(){
//creamos la conexión
$conexion = $this->conectarBD();
values (".$ran.")";
$consulta = mysqli_query($conexion,$sql);
if(!$consulta){
$this->desconectarBD($conexion);
return $consulta;
function getAllInfo(){
//Creamos la consulta
$sql = "SELECT * FROM random;";
return $this->getArraySQL($sql);
?>
<?php
require_once("RandomClass.php");
$rand->insertRandom();
?>
$rawdata = $rand->getAllInfo();
$timeArray;
for($i = 0 ;$i<count($rawdata);$i++){
$valoresArray[$i]= $rawdata[$i][1];
//OBTENEMOS EL TIMESTAMP
$time= $rawdata[$i][2];
$timeArray[$i] = $date->getTimestamp()*1000;
Vamos a dibujar un gráfico con la librería highcharts. En primero lugar vamos a incluir
las librerías de highcharts en nuestro archivo:
<script src="https://code.jquery.com/jquery.js"></script>
<script src="http://code.highcharts.com/stock/highstock.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
Creamos un div en el que se insertará nuestra gráfica, debe tener un id para identificarlo:
<div id="contenedor"></div>
Añadir una función en javascript usando las funciones de la librería highcharts pero
con los datos que insertaremos en la gráfica serán los datos que hemos obtenido de la
base de datos. Esta función es un ejemplo que vamos a usar nosotros, pero debemos
de tener en cuenta de que con highcharts se pueden crear gran variedad de gráficas.
<script>
chart: {
renderTo: 'contenedor'
//defaultSeriesType: 'spline'
},
rangeSelector : {
enabled: false
},
title: {
text: 'Gráfica'
},
xAxis: {
type: 'datetime'
//tickPixelInterval: 150,
//maxZoom: 20 * 1000
},
yAxis: {
minPadding: 0.2,
maxPadding: 0.2,
title: {
text: 'Valores',
margin: 10
},
series: [{
name: 'Valor',
data: (function() {
<?php
for($i = 0 ;$i<count($rawdata);$i++){
?>
<?php } ?>
return data;
})()
}],
credits: {
enabled: false
});
</script>
En la etiqueta series tenemos un campo llamado data, esta creada una función que se
llame al inicio del script, esta función añadirá parámetros a la gráfica, de tal forma que
añadirá tantos parámetros como datos tenga la tabla "random".
TODO EL CODIGO
<?php
class RandomTable{
public $IDr = 0 ;
function conectarBD(){
$server = "localhost";
$usuario = "root";
$pass = "";
$BD = "GeekyTheoryBD";
return $conexion;
function desconectarBD($conexion){
$close = mysqli_close($conexion);
if(!$close){
return $close;
function getArraySQL($sql){
//Creamos la conexión
$conexion = $this->conectarBD();
//generamos la consulta
$rawdata = array();
$i=0;
while($row = mysqli_fetch_array($result))
$rawdata[$i] = $row;
$i++;
$this->desconectarBD($conexion);
//devolvemos rawdata
return $rawdata;
function insertRandom(){
//creamos la conexión
$conexion = $this->conectarBD();
values (".$ran.")";
$consulta = mysqli_query($conexion,$sql);
if(!$consulta){
$this->desconectarBD($conexion);
function getAllInfo(){
//Creamos la consulta
return $this->getArraySQL($sql);
?>
drawchart.php
<HTML>
<BODY>
<meta charset="utf-8">
<?php
require_once("RandomClass.php");
$rand->insertRandom();
$rawdata = $rand->getAllInfo();
$timeArray;
for($i = 0 ;$i<count($rawdata);$i++){
$valoresArray[$i]= $rawdata[$i][1];
//OBTENEMOS EL TIMESTAMP
$time= $rawdata[$i][2];
$timeArray[$i] = $date->getTimestamp()*1000;
?>
<div id="contenedor"></div>
<script src="https://code.jquery.com/jquery.js"></script>
<script src="http://code.highcharts.com/stock/highstock.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
<script>
chart: {
renderTo: 'contenedor'
//defaultSeriesType: 'spline'
},
rangeSelector : {
enabled: false
},
title: {
text: 'Gráfica'
},
xAxis: {
type: 'datetime'
//tickPixelInterval: 150,
//maxZoom: 20 * 1000
},
yAxis: {
minPadding: 0.2,
maxPadding: 0.2,
title: {
text: 'Valores',
margin: 10
},
series: [{
name: 'valor',
data: (function() {
<?php
for($i = 0 ;$i<count($rawdata);$i++){
?>
<?php } ?>
return data;
})()
}],
credits: {
enabled: false
});
</script>
</BODY>
</html>