php 分页编号页面链接

标签 php pagination

这是用于导航的分页代码,有什么想法如何让此代码将页面的编号列表简单地显示为链接吗?

if (isset($_GET['pageno'])) {
   $pageno = $_GET['pageno'];
} 
else {
   $pageno = 1;
}
if(isset($_GET['niche']))
{


$query = "SELECT count(*) FROM studies WHERE niche = '{$_GET['niche']}'";
$result = mysql_query($query, $connection) or trigger_error("SQL", E_USER_ERROR);
}


$query_data = mysql_fetch_row($result);
$numrows = $query_data[0];
$rows_per_page = 4;
$lastpage      = ceil($numrows/$rows_per_page);
$pageno = (int)$pageno;
if ($pageno > $lastpage) {
   $pageno = $lastpage;
}
if ($pageno < 1) {
   $pageno = 1;
} // if
$limit = 'LIMIT ' .($pageno - 1) * $rows_per_page .',' .$rows_per_page;
$query = "SELECT * FROM studies WHERE niche = '{$_GET['niche']}' $limit";
$result = mysql_query($query, $connection) or trigger_error("SQL", E_USER_ERROR);

还有...

if ($pageno == 1) {
   echo "<div class='container'>FIRST PREV ";
} else {
   echo "<div class='container'> <a href='{$_SERVER['PHP_SELF']}?pageno=1&niche={$_GET['niche']}'>FIRST</a> ";
   $prevpage = $pageno-1;
   echo " <a href='{$_SERVER['PHP_SELF']}?pageno=$prevpage&niche={$_GET['niche']}'>PREV</a> ";
} // if
echo " ( Page $pageno of $lastpage ) ";
if ($pageno == $lastpage) {
   echo " NEXT LAST</div><br />";
} else {
   $nextpage = $pageno+1;
   echo " <a href='{$_SERVER['PHP_SELF']}?pageno=$nextpage&niche={$_GET['niche']}'>NEXT</a> ";
   echo " <a href='{$_SERVER['PHP_SELF']}?pageno=$lastpage&niche={$_GET['niche']}'>LAST</a></div><br /> ";
} // if
?>

最佳答案

试试这个:

$totalpages = ceil($numrows / $rows_per_page);

if($totalpages >= 1){ $pagelinkcount = 1; } else { $pagelinkcount = 0; }

while($pagelinkcount <= $totalpages && $totalpages > 1) {

     echo "<a href=\"/page/{$pagelinkcount}\">{$pagelinkcount}</a>&nbsp;";

     $pagelinkcount++;

}

顺便说一句,正如 Ian Elliot 在您的问题的评论中指出的那样,在 SQL 查询中使用 $_GET 会使您的数据库非常容易受到攻击,因此被认为是一种极其不安全的编码实践。您应该在将所需的 $_GET 数据传递到数据库之前对其进行转义和解析。

关于php 分页编号页面链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1064662/

相关文章:

php - 通过PHP上传SQL转储文件错误

ASP.NET Gridview 分页样式中的 C# Bootstrap 分页?

angular - 重定向到 Angular 中的上一页

JavaScript 分页

javascript - DataTable 不显示分页按钮和记录信息 - JQuery

javascript - meteor Kurourin 分页不起作用

php - 获取当前 Controller

php - 使用模型进行数据库操作时,Laravel dd/mm/yyyy 到 yyyy/mm/dd/conversion

php - 开始做服务器端的事情——选择什么语言和技术?

php - 编写干净的多维数组