Używam ZingChart. Podczas ładowania strony wykres pomyślnie ładuje dane z bazy danych MySql. Ale po pewnym czasie, kiedy baza danych jest aktualizowana, jak załadować najnowsze dane? Proszę pomóż mi . Próbowałem tego kodu na mojej stronie index.php, aby to zrobić, ale to nie działa.ZingChart, jak załadować najnowsze dane po pewnym odstępie czasu i zaktualizować wykres
<script>
var myData=[
\t <?php
$conn =mysql_connect("localhost","root","") or die ("we couldn't connect!");
mysql_select_db("webauth");
$rs = mysql_query("SELECT * FROM test") or die(mysql_error());
while($row = mysql_fetch_array($rs))
{
echo $row['label'].',';
}?>];
var myLabels=[<?php
$conn =mysql_connect("localhost","root","") or die ("we couldn't connect!");
mysql_select_db("webauth");
$rs = mysql_query("SELECT * FROM test") or die(mysql_error());
while($row2 = mysql_fetch_array($rs))
{
echo '"'.$row2['value'].'"'.',';
}?>];
window.onload=function(){
\t
\t
\t window.alert(myData);
\t zingchart.render({
\t id:'chartDiv',
data:{
"type":"bar",
\t \t
"scale-x":{
"values":myLabels,
},
"series":[
{
"values":myData
}
]
\t ,
\t "refresh":{
"type":"feed",
"transport":"http",
"url":"feed.php?",
"interval":200
\t \t },
}
});
}
</script>
i za pomocą tego kodu w feed.php stronie
<script>
var myData=[
\t <?php
?>
[
{
$conn =mysql_connect("localhost","root","") or die ("we couldn't connect!");
mysql_select_db("webauth");
$rs = mysql_query("SELECT * FROM test") or die(mysql_error());
while($row = mysql_fetch_array($rs))
{
"plot<?php echo $row['label'].',';
}?>"];
}
]
var myLabels=[<?php
?>
[
{
$conn =mysql_connect("localhost","root","") or die ("we couldn't connect!");
mysql_select_db("webauth");
$rs = mysql_query("SELECT * FROM test") or die(mysql_error());
while($row2 = mysql_fetch_array($rs))
{
"plot<?php echo '"'.$row2['value'].'"'.',';
}?>"];
}
]
\t
</script>
, więc chcesz stronę HTML, która samoczynnie odświeża lub gdy dane zmienią się w mysql? – Drew
Nie jestem zaznajomiony z ZingChart, jeśli obsługuje AJAX, ale zastanów się nad używaniem go zamiast przeładowywania całej strony. Niektóre narzędzia JS są świadome AJAX, więc możesz zaimplementować interfejs API, aby uzyskać aktualizację z timerem lub [coś] (http://stackoverflow.com/questions/tagged/websocket). – mlt
@Drew strona nie odświeża się całkowicie, ale tylko wykresy, i tak po ustalonym odstępie 10 sekund, nie kiedy dane zmieniają się w mysql – phpnet