Domanda

So che sembra confuso: Ho appena creato una paginazione precedente / successiva di base per mysql e volevo sapere se l'ultima pagina delle mie righe è .php? Page = 5 e qualcuno mette .php? Page = 263, quindi voglio reindirizzarli a .php ? page = 5

Qualche idea su come farlo .. le informazioni che ho attualmente sono, quante righe vengono restituite dopo il LIMIT, quindi se fosse .php? page = 263 allora sarebbe 0 Ho anche il numero totale di righe nel mio database ... il LIMIT è 10 :)

Grazie in anticipo !!

È stato utile?

Soluzione

Se hai già il numero totale di righe e sai quante righe visualizzerai per pagina, puoi calcolare l'ultima pagina in questo modo:

$totalPages = ceil( $rows / $perPage );

Quindi, limita semplicemente la pagina corrente a un limite ragionevole:

$page = isset( 

Se hai già il numero totale di righe e sai quante righe visualizzerai per pagina, puoi calcolare l'ultima pagina in questo modo:

$totalPages = ceil( $rows / $perPage );

Quindi, limita semplicemente la pagina corrente a un limite ragionevole:

<*>GET['page'] ) ? (int)

Se hai già il numero totale di righe e sai quante righe visualizzerai per pagina, puoi calcolare l'ultima pagina in questo modo:

$totalPages = ceil( $rows / $perPage );

Quindi, limita semplicemente la pagina corrente a un limite ragionevole:

<*>GET['page'] : 1; $page = min( max( $page, 1 ), $totalPages );

Altri suggerimenti

La cosa più semplice da fare è definire una forma di variabile $ max_page_number , quindi verificare che la pagina immessa $ _GET ['page'] sia inferiore al massimo numero possibile o, in caso contrario, compensarlo e reindirizzare all'ultima pagina:

$ max_page_number = 10; // o qualunque sia il numero massimo / ultimo della pagina, $ page_requested = $ _GET ['page'];

if ($page_requested <= $max_page_number) {

// show the page requested by the user
}

elseif ($page_requested > $max_page_number) {

// redirect to the relevant page

}

else {

// redirect to the splash page, or first page

}

vale anche la pena suggerire che dovresti controllare che le persone non possano entrare in index.php? page = -10 senza essere scoperte, quindi dovresti davvero controllare i numeri meno di la prima pagina e maggiore di la tua ultima pagina.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top