我目前正在一个名为" tbl_users"的表中传递名为" followers_count"的列的数据。该网站有几个用户,每个用户都有自己的页面。在这些页面上,一个人可以单击一个跟随按钮,并使用JSON显示跟随计数。该代码到目前为止工作,除了它只显示/更新" followers_count"的数据。对于第一个" userID"在表中。我的问题是,我如何更改代码,以便它知道每个用户的页面显示他们的followers_count?
在changes.php中:
<?php
require_once 'class.channel.php';
$user_change = new USER();
$seqFollows = $user_change->runQuery("SELECT followers_count FROM tbl_users");
$seqFollows->execute();
$row = $seqFollows->fetch(PDO::FETCH_ASSOC);
$follow_count = $row['followers_count'];
header('Content-type: application/json');
$array = array('followers_count'=>$follow_count);
echo json_encode($array);
?>
在index.php?id =(用户页面模板):
<div>
Channel Adds: <div id="follow_count" style="display:inline;"></div>
</div>
<script type="text/javascript">
var timer;
timer = setInterval(function() {
$(document).ready(function(){
$.getJSON('changes.php', function(data) {
$('#follow_count').html(data.followers_count);
});
});
}, 1 * 1000);
</script>
同样在index.php?id =中,这是确定我当前正在查看的页面的代码:
$currentID = ( isset( $_GET['id']) && !empty( $_GET['id'] ) ) ? trim($_GET['id']) : '' ;
$stmt = $user_home->runQuery("SELECT * FROM tbl_users WHERE userID=:uid");
$stmt->execute(array(":uid"=>$currentID));
$row = $stmt->fetch(PDO::FETCH_ASSOC);
答案 0 :(得分:2)
您需要告诉changes.php用户ID值是什么。您需要修改index.php文件以提供该值。一种选择是修改AJAX调用,类似于:
$(document).ready(function(){
$.getJSON('changes.php?id=<?php echo $_GET["id"]; ?>', function(data) {
$('#follow_count').html(data.followers_count);
});
});
然后你的changes.php文件需要获得$_GET['id']
的值,就像index.php一样。