3

ページネーションに問題があります。10 項目だけを表示するにはどうすればよいですか? Google でこのようなことができます - 数が +5 増えましたか?

ここに画像の説明を入力

<?php
// Make the links to other pages, if necessary.
if ($pages > 1) {

    echo '<br /><p>';
    $current_page = ($start/$display) + 1;

    // If it's not the first page, make a Previous button:
    if ($current_page != 1) {
        echo '<a href="list_photos_4.php?s=' . ($start - $display) . '&p=' . $pages . '&sort=' . $sort . '">Previous</a> ';
    }

    // Make all the numbered pages:
    for ($i = 1; $i <= $pages; $i++) {
        if ($i != $current_page) {
            echo '<a href="list_photos_4.php?s=' . (($display * ($i - 1))) . '&p=' . $pages . '&sort=' . $sort . '">' . $i . '</a> ';
        } else {
            echo $i . ' ';
        }
    } // End of FOR loop.

    // If it's not the last page, make a Next button:
    if ($current_page != $pages) {
        echo '<a href="list_photos_4.php?s=' . ($start + $display) . '&p=' . $pages . '&sort=' . $sort . '">Next</a>';
    }

    echo '</p>'; // Close the paragraph.

} // End of links section.
?>
4

3 に答える 3

2

セクション (すべての番号付きページを作成) を次のように変更してみてください。

// Make all the numbered pages:
    for ($i = 1; $i <= $pages; $i++) {    
        if ($i != $current_page) {
            $distance = $current_page - $i;
            if (abs($distance) < 5){
                echo '<a href="list_photos_4.php?s=' . (($display * ($i - 1))) . '&p=' . $pages . '&sort=' . $sort . '">' . $i . '</a> ';
            } 
        } else {
            echo $i . ' ';
        }
    } // End of FOR loop

これがあなたにとってうまくいくことを願っています。

于 2013-10-15T10:15:17.040 に答える
1
<?php
// Make the links to other pages, if necessary.
if ($pages > 1) {

    // (...)

    $first_disp_page = $cutrrent_page - 5 < 1 ? 1 : $current_page - 5;
    $last_disp_page = $current_page + 5 > $pages ? $pages : $current_page + 5;

    // Make all the numbered pages:
    for ($i = $first_disp_page; $i <= $last_disp_page; $i++) {
        if ($i != $current_page) {
            echo '<a href="list_photos_4.php?s=' . (($display * ($i - 1))) . '&p=' . $pages . '&sort=' . $sort . '">' . $i . '</a> ';
        } else {
            echo $i . ' ';
        }
    } // End of FOR loop.

    // (...)

} // End of links section.
?>
于 2013-10-15T10:15:00.807 に答える