Buenas tardes compañeros tengo ya un rato con esto y no logro hacer que funcione.
tengo el siguiente codigo en html
Código HTML:
Ver original<!DOCTYPE html>
<meta name='viewport' content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0' /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <link rel="shortcut icon" href="demo/favicon.ico" type="image/x-icon" /> div.demo {
border-bottom: 1px dotted gray;
margin-bottom: 2em;
}
input {
margin: 2em 0;
}
<link rel="stylesheet" href="external/jquery.mobile-1.3.0.min.css" /> <link href="css/mobipick.css" rel="stylesheet" type="text/css" /> <link href="demo/shCoreDefault.css" rel="stylesheet" type="text/css" /> <link href="demo/shThemeDefault.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="demo/shCore.js"></script> <script type="text/javascript" src="demo/shBrushJScript.js"></script> <script type="text/javascript" src="demo/shBrushXml.js"></script> <script type="text/javascript" src="external/modernizr.custom.min.js"></script> <script type="text/javascript" src="external/xdate.js"></script> <script type="text/javascript" src="external/xdate.i18n.js"></script> <script type="text/javascript" src="external/jquery-1.9.1.min.js"></script> <script type="text/javascript" src="external/jquery.mobile-1.3.0.min.js"></script> <script type="text/javascript" src="js/mobipick.js"></script> <script type="text/javascript"> $( document ).on( "pagecreate", "#demo", function() {
var hoy = new Date();
var dd = hoy.getDate();
var mm = hoy.getMonth()+1; //hoy es 0!
var yyyy = hoy.getFullYear();
if(dd<10) {
dd='0'+dd
}
if(mm<10) {
mm='0'+mm
}
hoy = yyyy+'/'+mm+'/'+dd;
$(".max").attr("max",hoy);
SyntaxHighlighter.all();
var picker = $( "input[type='text']", this );
picker.mobipick();
picker.on( "change", function() {
var date = $( this ).val();
// formatted date
var dateObject = $( this ).mobipick( "option", "date" );
});
$("#botoncito").click(
function (){
var valor1=$("#min").val();
var valor2=$("#max").val();
$.ajax({
// En data puedes utilizar un objeto JSON, un array o un query string
data: {"fecha1" : valor1, "fecha2" : valor2 },
//Cambiar a type: POST si necesario
type: "POST",
// Formato de datos que se espera en la respuesta
// URL a la que se enviará la solicitud Ajax
url: "Grafica.php",
})
.done(function( data ) {
alert(data)
$("#Aqui").html(data)
})
}
)
});
<form action="grafica.php" method="post" > <div id="demo" data-role="page" data-add-back-btn="true" class="ui-body-b"> <div data-role="header" class="ui-body-b"> <h1>Seleccione Fechas
</h1>
<div data-role="content" class="ui-body-b">
<input type="text" id="min" class="max" max="2015-12-31" />
<input type="text" class="max" id="max" max="2015-12-31" min="2015-12-31" />
<input type="button" id="botoncito" value="Consultar"/>
este codigo consulta a este php
Código PHP:
Ver original<?php
require('class/metro.class.php');
$objMetro = new Metro;
$fecha1=$_POST["fecha1"];
$consulta="SELECT SUM(total) AS total_categoria,descripcion FROM(
SELECT t2.idpedido, (t2.cantidad*t3.precio) AS total, t4.descripcion, t1.fecha
FROM ventas AS t1
INNER JOIN pedidos AS t2 ON (t1.ticket=t2.idOrden)
INNER JOIN productosVENTA AS t3 ON (t2.productos=t3.idProducto)
INNER JOIN categoria AS t4 ON (t3.idcategoria=t4.idcategoria)
) AS completa where fecha between DATE('2016/12/10') and DATE('2016/12/14') GROUP BY descripcion";
$usuarios_login = $objMetro->query($consulta);
$datos[0] = array('total_categoria','descripcion');
//recorremos filas
for ($i=1; $i<($numFilas+1); $i++)
{
(int
) mysql_result($usuarios_login, $i-1, "total_categoria")); }
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load("current", {packages:["corechart"]});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable(cargaDatos);
var options = {
title: 'Corte del <?php echo "aldiax y dia y"; ?> ',
is3D: true,
};
var chart = new google.visualization.PieChart(document.getElementById('piechart_3d'));
chart.draw(data, options);
}
</script>
</head>
<body>
<?php
echo $fecha1."<br>";
$usuarios_login = $objMetro->query($consulta);
echo $usuarios[1] . " " ." $". $usuarios[0]."<br>";
}
?>
<div id="piechart_3d" style="width: 900px; height: 500px;"></div>
</body>
</html>
y me retorna este html
Código HTML:
Ver original<!doctype html>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load("current", {packages:["corechart"]});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var cargaDatos = [["total_categoria","descripcion"],["Bebidas",49],["Combinados",8],["Derivados ",30],["Tacos Normales",128]];
var data = google.visualization.arrayToDataTable(cargaDatos);
var options = {
title: 'Corte del aldiax y dia y ',
pieHole: 0.4,
};
var chart = new google.visualization.PieChart(document.getElementById('piechart_3d'));
chart.draw(data, options);
}
Bebidas 49
<br>Combinados 8
<br>Derivados 30
<br>Tacos Normales 128
<br> <div id="piechart_3d" style="width: 900px; height: 500px;"></div>
el problema es que la funcion ajax en jquery no me muestra la grafica que segun el html si esta, mas sin enbargo si me muestra los datos que estan en el while del php . si consulto el php directo del archivo funciona sin problemas que podria ser? alguna configuracion de mi xampp??