Problema eliminazione ultimo record da ultima pagina di crud con paginazione

  • Creatore Discussione Creatore Discussione wao
  • Data di inizio Data di inizio

wao

Nuovo Utente
20 Ago 2013
2
0
0
Salve a tutti.
Ho creato un CRUD (create, read, update, delete) davvero ben funzionante, con ricerca e paginazione, nonché links per l'aggiornamento e l'eliminazione dei records.

Fra l'altro ho implementato un codice da un libro davvero ottimo con l'utilizzo di SQL_CALC_FOUND_ROWS e FOUND_ROWS

Tutto funziona davvero molto bene, accade però uno strano problema quando mi trovo in una situazione come questa:

Supponiamo di avere un numero di records totali nella tabella di 27, ed avere io deciso di visualizzare 5 records per pagina, otterrei 6 pagine,
le prime 5 piene e l'ultima (la sesta pagina) contenente due soli records.

Al momento di eliminare l'ultimo record dell'ultima pagina (la sesta), al refresh della pagina la visualizzazione dei records non scatterebbe alla quinta pagina, facendola diventare di fatto l'ultima, ma avrei il messaggio che non ci sono records nel database. Poi effettuando il refresh della pagina manualmente, la visualizzazione tornerebbe normale.

In buona sostanza ciò di cui avrei bisogno è calcolare quanti record ci sono nell'ultima pagina (quei due dell'esempio di sopra) in modo da poter fare qualcosa come:

if($last_item == 0)
{
$pag = $pag - 1;
}

E controllare in questo modo il corretto redirezionamento.

Spero di essermi spiegato, grazie anticipatamente.
 
Ciao, puoi usare l'operatore % per avere il resto di una divisione
PHP:
<?php
$record_per_pagina = 5;

$pagine = round(27/$record_per_pagina);

$resto = 27 % $pagine;

echo $resto;
?>
 

Discussioni simili