2013-02-12 58 views
2

我想更多内容动态地加载到我的系统如何正确计算在PDO查询

这是我的代码...

$stmt = " 
    SELECT * FROM `acmPosting` 
    WHERE (`sender`='$thisID' AND `postType`='a') 
    OR (`recip`='$thisID' AND `sender`='$userID' AND `postType`='a') 
    OR (`sender` IN ($friendsArray) AND `recip`='$thisID' AND `postType`='a') 
    ORDER BY `timeSent` DESC LIMIT $startlimit,10"; 

    if($stmtCount = $conn->query($stmt)){ 
     if($stmtCount->fetchColumn() > 0){ 
      $result = acmPosts($conn, $site, $userID, $stmt); 
      $jsonArray['a'] = $result; 
      $jsonArray['b'] = 'go';    
     }else{ 
      $jsonArray['a'] = '<div class="thisOutput" style="padding:12px;">There are no more posts</div>'; 
      $jsonArray['b'] = 'stop'; 
     } 
    } 

一切工作正常,直到它到达最后一组AKA如果LIMIT是100,10,但在调用中有105个帖子,它不会调用任何fetchColumn()函数。

我希望这个问题有道理。预先感谢您提供的任何帮助。

编辑

我怎么能确定什么时候我已经达到了极限,并据此采取行动

+0

我很困惑你为什么期望一个有95行的表返回,当你指定100作为偏移量。 – 2013-02-12 18:02:55

+0

@Michael Berkowski我不完全确定如何解决这个问题。它是动态的,所以我发送一个int并将其乘以10来获得偏移量,然后向int中加1。所以最后如果int = 10,那么offset = 100。那就是我需要解决的问题 – 2013-02-12 18:08:06

+0

所以你的问题是如何确定何时达到极限,并采取相应措施? – 2013-02-12 18:10:05

回答