我们如何选择just,让每个页面输入12个数据库条目,然后再将12个推送到下一页,依此类推?等等?
这将是来自boostrap的分页,所以:
question.choice_set.all()
如果它有帮助,这里有一些php,这只是我用来抓取和显示entires的基本形式,但它们现在都出现在一个页面上。
<ul class="pagination">
<li><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
</ul>
答案 0 :(得分:1)
根据您的代码示例,您可以在查询中轻松使用LIMIT和OFFSET来启用分页。
SELECT title, whole FROM stories LIMIT 12 OFFSET 0
以上查询将显示12个结果。
<?php
$per_page = 12;
$id = (empty($_GET['id'])) ? 0 : $_GET['id'] ;
$offset = $per_page * $id;
$query = "SELECT title, whole FROM stories LIMIT :limit OFFSET :offset";
$stmt = $db->prepare($query);
$stmt->bindParam(":limit", $per_page, PDO::PARAM_INT);
$stmt->bindParam(":offset", $offset, PDO::PARAM_INT);
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC);
//delete this-> $info = mysql_fetch_array($query1); ?
while($row = $stmt->fetch(PDO::FETCH_ASSOC))
{
?>
<div class="left">
<a href="">
<span class="text-content"><span><?php echo htmlentities($row["whole"]); ?></span></span>
</a>
</div>
<?php
}
这未经过测试,但它应该指向正确的方向。
答案 1 :(得分:0)
要获取可以使用SELECT COUNT(*) AS num_rows FROM stories
查询的帖子总数,请将每页帖子的帖子总数除以构建分页链接。
要检索当前页面的帖子,请使用LIMIT子句[LIMIT {[offset,] row_count | row_count OFFSET offset}]
构建查询,例如:
$post_per_page = 12;
$page = $_GET['page'];
$sql = sprintf( "SELECT title, whole FROM stories LIMIT %d, %d", $post_per_page*$page, $post_per_page );