2
我想在15秒的時間間隔後從當前頁面獲取所有帖子ID,以使服務器端的php查詢。 PHP查詢將在Sql中找到與ID匹配的數據,如果有任何數據爲特定的ID查找,則會將其添加。陣列沒有發送所有元素,只獲得第一個
所以在我的當前頁面有自己的動態帖子ID像許多DIV:
<div class="case" data-post-id="111"></div>
<div class="case" data-post-id="222"></div>
<div class="case" data-post-id="333"></div>
<div class="case" data-post-id="anything else dynamic no"></div>
而且我想,我的javascript將獲得與發送該ID到一個PHP查詢發現在SQL任何比賽。
這裏我的array
只有第一個帖子ID。問題是,無論是我的javascript數組或PHP數組
我的更新腳本:(這裏var CID
無法獲得身份證,只得到第一個ID)
//make array to get id
var CID = []; //get dynamic id
$('div[data-post-id]').each(function (i) {
CID[i] = $(this).data('post-id');
});
function addrep(type, msg) {
CID.forEach(function (id) {
$("#newreply" + id).append("");
});
}
var tutid = '<?php echo $tutid; ?>';
function waitForRep() {
$.ajax({
type: "GET",
url: "/server.php",
cache: false,
data: {
tutid: tutid,
// this way array containing all ID's can be sent:
cid: CID
},
timeout: 15000,
success: function (data) {
addrep("postreply", data);
setTimeout(
waitForRep,
15000);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
setTimeout(
waitForRep,
15000);
}
});
}
server.php
if($_REQUEST['tutid'] && $_REQUEST['cid']){
//make array to cid to get id
foreach($_REQUEST['cid'] as $key => $value){
$res = mysqli_query($dbh,"SELECT * FROM test WHERE id =".$value." AND page_id=".$_REQUEST['tutid']." ORDER BY id DESC LIMIT 1") or die(mysqli_error($dbh));
$rows = mysqli_fetch_assoc($res);
$row[] = array_map('utf8_encode', $rows); //line 80
$data = array();
$data['id'] = $rows['id'];
//etc all
//do something
if (!empty($data)) {
echo json_encode($data);
flush();
exit(0);
}
} }
數組構建正確:http://jsfiddle.net/k5mo22Lc/,雖然你可以sh通過使用map()來完成。你有沒有檢查服務器正在檢索什麼數據? – 2015-03-02 10:45:37
如何檢查它先生。我的php數組在server.php文件中是否可以? – koc 2015-03-02 11:00:10
在你的PHP文件中,做print_r($ _ REQUEST ['cid']);出口; - >這是什麼打印? – lshettyl 2015-03-02 11:22:10