我尝试了4天关于制作分页系统,但我无法理解互联网上的任何代码,因为我是新手。
这是我的代码:
$sql = "SELECT name_id, name FROM TABLE WHERE tag1 in ('$tag1') OR tag2 in ('$tag1') $andor tag2 in ('$tag2') OR tag1 in ('$tag2') ORDER BY rating desc LIMIT 5 OFFSET 0";
$result = $conn->query($sql);
分页HTML代码:
<div class='pagination'>
<a>1</a>
</div>
我不知道该怎么办。你能解释一下这段代码吗?
答案 0 :(得分:0)
首先,您需要计算记录数,以便计算页数。
$row_count = $con->query("SELECT count(name_id) FROM TABLE WHERE tag1 in ('$tag1') OR tag2 in ('$tag1') $andor tag2 in ('$tag2') OR tag1 in ('$tag2') ORDER BY rating desc LIMIT 5 OFFSET 0";");
现在您可以计算页数$row_count/5
(如果您希望每次显示5个结果,则为5)
然后在您生成的页面上,您需要创建一组链接,这些链接调用同一页面但页码不同
<a href="/page.php?page=2>2<a>
<a href="/page.php?page=3>3<a>
...
然后您需要使用page
值作为查询的偏移量。
$offset = 5*$_GET['page'];
$sql = "SELECT name_id, name FROM TABLE WHERE tag1 in ('$tag1') OR tag2 in ('$tag1') $andor tag2 in ('$tag2') OR tag1 in ('$tag2') ORDER BY rating desc LIMIT 5 OFFSET $offset";