sql >> データベース >  >> RDS >> Mysql

高度なphp/mysqlページネーションスクリプトの検索

    これを試してみてください

    function generatePagination($currentPage, $totalPages, $pageLinks = 5)
    {
        if ($totalPages <= 1)
        {
            return NULL;
        }
    
        $html = '<ul class="pagination">';
    
        $leeway = floor($pageLinks / 2);
    
        $firstPage = $currentPage - $leeway;
        $lastPage = $currentPage + $leeway;
    
        if ($firstPage < 1)
        {
            $lastPage += 1 - $firstPage;
            $firstPage = 1;
        }
        if ($lastPage > $totalPages)
        {
            $firstPage -= $lastPage - $totalPages;
            $lastPage = $totalPages;
        }
        if ($firstPage < 1)
        {
            $firstPage = 1;
        }
    
        if ($firstPage != 1)
        {
            $html .= '<li class="first"><a href="./?p=1" title="Page 1">1</a></li>';
            $html .= '<li class="page dots"><span>...</span></li>';
        }
    
        for ($i = $firstPage; $i <= $lastPage; $i++)
        {
            if ($i == $currentPage)
            {
                $html .= '<li class="page current"><span>' . $i . '</span></li>';
            }
            else
            {
                $html .= '<li class="page"><a href="./?p=' . $i . '" title="Page ' . $i . '">' . $i . '</a></li>';
            }
        }
    
        if ($lastPage != $totalPages)
        {
            $html .= '<li class="page dots"><span>...</span></li>';
            $html .= '<li class="last"><a href="./?p=' . $totalPages . '" title="Page ' . $totalPages . '">' . $totalPages . '</a></li>';
        }
    
        $html .= '</ul>';
    
        return $html;
    }
    


    1. JDBCを使用したSQLServerLocalDBへの接続

    2. データベース設計:EAVにするか、EAVしないか?

    3. MySQLTIMESTAMPからQDateTimeへのミリ秒

    4. MySQLでのLOCATE()関数のしくみ