在PHP图像库上创建分页以及每页选择的数量

时间:2011-08-16 01:50:04

标签: php mysql pagination

我有一个简单的PHP图像库,PHP从MySQL数据库中读取数据,并将每个数据库组织并链接到更大的版本。它运行良好但在页面上放置了太多图像。

我希望有人可以告诉我如何首先将图像分割成多个页面,以及通过页面为用户创建导航。

如果可能,我还希望用户能够选择每页应显示多少图像,默认值为16。

以下是我当前图库的代码:

<?php
$mysql_link = mysql_connect("localhost", "root", "root");   
mysql_select_db("new_arrivals_imgs") or die("Could not select database");

$query = mysql_query("SELECT `imgURL`,`imgTitle` FROM `images` ".
                     "ORDER BY `imgDate` DESC") or die(mysql_error());

if(!$query) {
 echo "Cannot retrieve information from database.";
} else {
 while($row = mysql_fetch_assoc($query)) {
  echo "<li><a href='new_arrivals_img/".$row['imgURL'].
           "' class='gallery' title='".$row['imgTitle'].
           "'><img src='new_arrivals_img/thumbnails/".
           $row['imgURL']."'></a></li>";
 }
}
?>

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

您可以将LIMIT添加到查询字符串的末尾。

$query = mysql_query("SELECT `imgURL`,`imgTitle` FROM `images` ".
"ORDER BY `imgDate` DESC LIMIT " . $limit * $curPage . ", $limit") or die(mysql_error());

限制的第一部分是从哪里开始,第二部分是长度。

$limit可以通过选择框或用户文字设置,$curPage可以通过网址参数传送。

http://dev.mysql.com/doc/refman/5.1/en/select.html

答案 1 :(得分:0)

如果您结束了许多页面(即100+),您可能需要查看“对数”页面导航,如下所述:

How to do page navigation for many, many pages? Logarithmic page navigation