在功能调用的分页链接中挣扎

时间:2013-08-02 08:45:33

标签: php database pagination

我正在开发分页,并希望使用函数引用链接。但是,如果我将其作为函数应用,我只会获得“上一页”按钮,并在我手动输入时获取正确的代码。如果您希望我发送整个代码,请通知我。

function pagelinks(){
    global $g,$CurrentPage,$Totalpages,$next,$previous;
    echo '<div id='.$g.'></div>';
    if($CurrentPage != 1){
        $previous = $CurrentPage - 1;
        echo '<a href = "?'.$g.'='.$previous.'">Back</a>';
    }

    if($CurrentPage != $Totalpages) {
        $next = $CurrentPage + 1;
        echo '<a class="pagination" href = "?'.$g.'='.$next.'">Next</a> ';

    }

    echo '</div>';
    $pageLinks =  array($previous,$next);
   return $pageLinks;
}

2 个答案:

答案 0 :(得分:1)

以下是我在项目中使用的分页脚本的最佳教程。

http://www.9lessons.info/2009/09/pagination-with-jquery-mysql-and-php.html

答案 1 :(得分:0)

我制作了另一个版本的函数:

function pagelinks($g, $currentPage, $totalPages, &$next = null, &$previous = null)
{
    $out = '<div id='.$g.'></div>';
    if ($currentPage > 1) {
        $previous = $currentPage - 1;
        $out .= '<a href = "?'.$g.'='.$previous.'">Back</a>';
    }
    if ($currentPage < $totalPages) {
        $next = $currentPage + 1;
        $out .= '<a class="pagination" href = "?'.$g.'='.$next.'">Next</a> ';
    }
    $out .= '</div>';
    return $out;
}

echo pagelinks('page', 2, 5);

// if you need $next and $previous 
// just pass variables to function and use after function call
echo pagelinks('page', 2, 5, $next, $previous);

echo $next;
echo $previous;

我试图改进一些事情。

  1. 不需要全局变量。必须将参数传递给函数。这样可以确保设置每个值。
  2. 功能无回声。相反,链接将被返回。
  3. $ previous和$ next可以作为函数的引用传递。
  4. 更改条件:$ currentPage&gt; 1和$ currentPage&lt; $总页数