Javascript 从PHP文件中检索JSON,并在div中追加
我试图在我的网站内进行近实时的图形更新。要做到这一点,我尝试基本上每30秒重新加载一个php文件。我让PHP的数据动态地回显json代码,如下所示。文件中的Ad也是用来刷新文件以重新检查数据库的 {todayCalculateCR:5%}{TodayPC:0.20}{todayCTR:34%}{yesterdayCalculateCR:35%}{yesterdayEPC:0.03}{yesterdayCTR:24%}{monthCalculateCR:14%}{Monthhepc:0.07}{monthCTR 24%} 基本上现在我希望在index.php页面上放置一些jquery代码来加载这个文件,解释json代码并将数据附加到正确的div中 例如: 0.03 我在jquery.com和stack overflow上寻找基本上获取上述json数据并将其追加的方法 $.get dashboard-stats.php,函数数据{ $body .append yesterdayEPC:+data.yesterdayEPC//John .append Time:+data.yesterdayEPC;//2pm },json 以下是PHP文件生成json的简介: $month\u visions=mysql\u num\u rowsmysql\u querySELECT*FROMlocker\u reports其中uid='$user\u id'和month='$month\u date'; $month\u clicks=mysql\u num\u rowsmysql\u querySELECT*fromReports其中uid='$user\u id'和month='$month\u date',status='1'; $month\u leads=mysql\u num\u rowsmysql\u querySELECT*fromReports其中uid='$user\u id'和month='$month\u date',status='2'; 如果$month_leads==| |$month_点击== { echo json_encodearraymonthCalculateCR=>n/a; echo json_encodearraymonthEPC=>n/a; } 其他的 { $monthCalculateCR=数量\格式$month\点击次数/$month\潜在客户数。%; echo json_encodearraymonthCalculateCR=>。$monthCalculateCR。; $monthEPC=数量\格式$month\潜在客户/$month\点击次数,2。; echo json_encodearraymonthEPC=>。$monthEPC。; } 如果$month_访问== { echo json_encodearraymonthCTR=>n/a; } 其他的 { $monthCTR=数量\格式$month\点击次数/$month\访问次数,2*100%; echo json_encodearraymonthCTR=>。$monthCTR。; }尝试使用setTimeout函数调用$.get jQuery方法调用响应JSON的php文件Javascript 从PHP文件中检索JSON,并在div中追加,javascript,php,jquery,html,json,Javascript,Php,Jquery,Html,Json,我试图在我的网站内进行近实时的图形更新。要做到这一点,我尝试基本上每30秒重新加载一个php文件。我让PHP的数据动态地回显json代码,如下所示。文件中的Ad也是用来刷新文件以重新检查数据库的 {todayCalculateCR:5%}{TodayPC:0.20}{todayCTR:34%}{yesterdayCalculateCR:35%}{yesterdayEPC:0.03}{yesterdayCTR:24%}{monthCalculateCR:14%}{Monthhepc:0.07}{m
reload();
function reload(){
$.get( "yourFile.php", function( data ) {
//update table based on data
var jsonData = $.parseJSON(data);
$('#myDiv').append('callback called').append(data);
});
setTimeout(reload, 30000);
}
我通过将json放在1个括号中基本上解决了我的问题 然后使用教程,我发现我可以做到以下几点 今天点击:
您应该仔细阅读socket.io,因为这会更恰当地解决您的问题。您是否尝试过任何代码?好的,但如何获取json URL我不知道如何从phpSuggestion获取json数据:将setTimeout更改为window.setTimeout,并将其放入回调函数中@约翰逊先生,您获取数据并使用json_encode返回数据。@DanFromGermany-为什么我应该使用window.setTimeout而不是setTimeout?如果我把setTimeout放在回调函数中,重新加载时间不是30秒,而是取决于php文件的响应时间,如果出现错误,页面将不再刷新。如果出现错误,我想您需要错误处理。setTimeout方法在window对象中。请参阅@MrJohnson-您必须创建一个新的php文件,从数据库中检索数据,并在使用json_encode编码后使用echo将其发送回
<script>
var JSONObject = {"todayEarnings":"2.60","todayVisits":"62","todayClicks":"26","todayLeads":"3","todayCalculateCR":"9%","todayEPC":"0.12","todayCTR":"42%","yesterdayEarnings":"0.40","yesterdayClicks":"35","yesterdayVisits":"148","yesterdayLeads":"1","yesterdayCalculateCR":"35%","yesterdayEPC":"0.03","yesterdayCTR":"24%","monthEarnings":"3.00","monthClicks":"65","monthVisits":"242","monthLeads":"4","monthCalculateCR":"16%","monthEPC":"0.06","monthCTR":"27%"}
document.getElementById("clicks").innerHTML=JSONObject.todayClicks;
</script>