PHP分页截断页面列表
更新以包含完整代码 我从数据库中提取记录,然后每页显示5条,如下所示:PHP分页截断页面列表,php,html,mysql,Php,Html,Mysql,更新以包含完整代码 我从数据库中提取记录,然后每页显示5条,如下所示: $num_rec_per_page=5; if (isset($_GET["page"])) { $page = $_GET["page"]; } else { $page=1; }; $start_from = ($page-1) * $num_rec_per_page; $school = $_REQUEST['school']; $sql = "SELECT * FROM `data` WHERE `sc
$num_rec_per_page=5;
if (isset($_GET["page"])) { $page = $_GET["page"]; } else { $page=1; };
$start_from = ($page-1) * $num_rec_per_page;
$school = $_REQUEST['school'];
$sql = "SELECT * FROM `data` WHERE `school` LIKE '%$school%'";
$rs_result = mysql_query($sql);
$total_records = mysql_num_rows($rs_result); //count number of records
$total_pages = ceil($total_records / $num_rec_per_page);
for ($i=1; $i<=$total_pages; $i++) {
echo "<a href='search.php?school=".urlencode($school)."&page=".$i."'>".$i."</a>";
};
我想做的是:
<Prev 1 2 3 4....53 54 55 Next>
在
选择
查询中使用限制
和偏移
子句来实现分页
以下是参考资料:
$num_rec_per_page = 5;
if(isset($_GET["page"])){
$page = $_GET["page"];
}else{
$page=1;
}
$offset = ($page - 1) * $num_rec_per_page;
$school = $_GET['school'];
$sql = "SELECT * FROM `data` WHERE `school` LIKE '%" . $school. "%' LIMIT 5 OFFSET " . $offset;
$rs_result = mysql_query($sql);
$total_records = mysql_num_rows($rs_result); //count number of records
$total_pages = ceil($total_records / $num_rec_per_page);
for ($i=1; $i<=$total_pages; $i++){
if($i != 1){
$prev_page = $i - 1;
echo "<a href='search.php?school=".urlencode($school)."&page=" . $prev_page ."'><prev</a>";
}
echo " <a href='search.php?school=".urlencode($school)."&page=".$i."'>".$i."</a>";
if($i != $total_pages){
$next_prev = $i + 1;
echo " <a href='search.php?school=".urlencode($school)."&page=" . $next_page ."'>next></a>";
}
}
$num\u rec\u每页=5;
如果(isset($_GET[“page”]){
$page=$_GET[“page”];
}否则{
$page=1;
}
$offset=($page-1)*$num\u rec\u每页;
$school=$_GET['school'];
$sql=“从`data`中选择*,其中`school`类似于“%”$学校“%”限制5个偏移量$抵消;
$rs\u result=mysql\u查询($sql);
$total\u records=mysql\u num\u行($rs\u result)//统计记录数
$total_pages=ceil($total_records/$num_rec_/页);
对于($i=1;$iFrom这些
来自何处?它是一个链接吗?无论如何,要根据所需的行为生成数字链接,您只需要一个空格。因此您的echo语句应该是这样的,echo“”
welcome@RajdeepPaul-这就是问题所在;用户当前正在获取完整的链接列表,并希望获得一些链接,这些链接将根据我们在分页中的位置而改变。不幸的是,它太宽,因此脱离主题。@andrewsi是的,代码也不足以支持此问题。
$num_rec_per_page = 5;
if(isset($_GET["page"])){
$page = $_GET["page"];
}else{
$page=1;
}
$offset = ($page - 1) * $num_rec_per_page;
$school = $_GET['school'];
$sql = "SELECT * FROM `data` WHERE `school` LIKE '%" . $school. "%' LIMIT 5 OFFSET " . $offset;
$rs_result = mysql_query($sql);
$total_records = mysql_num_rows($rs_result); //count number of records
$total_pages = ceil($total_records / $num_rec_per_page);
for ($i=1; $i<=$total_pages; $i++){
if($i != 1){
$prev_page = $i - 1;
echo "<a href='search.php?school=".urlencode($school)."&page=" . $prev_page ."'><prev</a>";
}
echo " <a href='search.php?school=".urlencode($school)."&page=".$i."'>".$i."</a>";
if($i != $total_pages){
$next_prev = $i + 1;
echo " <a href='search.php?school=".urlencode($school)."&page=" . $next_page ."'>next></a>";
}
}