Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Paginazione e Memorizzazione Posizione

    Buongiorno a tutti,

    premetto che sono alle prime armi con il linguaggio PHP e ho realizzato a mio modo un sito per l'azienda dove lavoro per la gestione delle Richieste D'Acquisto.

    ora nella pagina principale mostro una tabella contenente le RDA inserite dagli utenti. Ogni RDA dispone di un pulsante che se premuto nella parte sottostante questa tabella mostra il dettaglio della RDA stessa. Ho aggiunto una paginazione in quanto il numero di RDA da visualizzare è diventato elevato e fin qui nessun problema, qui il codice utilizzato

    Codice PHP:
    <?php header('Content-type: text/html; charset=utf-8');  
    $paginazione "Pagine totali: " $tot_pages " ["

    for(
    $i 1$i <= $tot_pages$i++) 

            if(
    $i == $current_page) { $paginazione .= $i " "; } 
            else { 
    $paginazione .= "<a href=\"?page=$i\" title=\"Vai alla pagina $i\">$i</a> "; }
     } 
    $paginazione .= "]";  ?>
    tutto funziona perfettamente se non fosse per una cosa: mettiamo di essere nella pagina numero 3 e selezionare la RDA cod. 150. Nella parte sotto la tabella vedo il dettaglio dell'RDA selezionata ma la tabella soprastante che le mostra tutte mi torna alla posizione iniziale, quindi alla pagina 1. Nella pagina in questione carico le variabili che devo utilizzare

    Codice PHP:
    //trovo il numero di record da visualizzare                           
     
    $sql="select count(T_RDA.ID_RDA) from T_RDA left outer join T_PERSONA on (T_RDA.ID_RICHIEDENTE=T_PERSONA.ID_PERSONA)";

    //numero totale record                 
    $result=mysql_query($sql,$conn);                                          

    $res_count=mysql_fetch_row($result);                           

    $tot_records=$res_count[0];                           

    //numero risultati per pagina                
    $per_page=15;                          

    //numero totale pagine                $tot_pages=ceil($tot_records/$per_page);                           

    //pagina corrente               
     
    $current_page=(!$_GET['page'])?1:(int)$_GET['page'];                           

    //primo paramentro della funzione LIMIT                
    $primo=($current_page-1)*$per_page;                                                    

    //visualizzo tutte le RDA                
    $sql="select T_RDA.ID_RDA,T_RDA.Stato,T_RDA.Data,                
    T_PERSONA.Nome, T_PERSONA.Cognome, T_RDA.Capitolato                  
    from T_RDA                 
    left outer join T_PERSONA on (T_RDA.ID_RICHIEDENTE=T_PERSONA.ID_PERSONA)                Order by T_RDA.ID_RDA DESC                
    LIMIT 
    $primo$per_page";                
    $result=mysql_query($sql,$conn);
    //eseguo la query 
    e richiamo la paginazione

    Codice PHP:
    //Creo la barra di scorrimento per la paginazione includendo           
    //la paginazione.php che ho creato in precedenza          
    echo "<div align=\"center\">\n<table style= 'font-family: Gill,Helvetica,sans-serif;                                                      
    font-size: 12;'>\n"
    ;          
    echo 
    "<a href=\"page.php?id=" $results['id'] . "\">" $results['nome'] . "</a>";   

    //gestione pagine         
     
    echo "</td>\n </tr>\n";          
    include(
    "Paginazione.php");//inclusione "classe"          
    echo " <tr>\n <td height=\"50\" valign=\"bottom\" align=\"center\">$paginazione</td>\n";
    //numeri scorrimento          
    echo " </tr>\n</table>\n</div>"
    Come posso fare per mantenere la memoria della pagina in cui sono e non fare questo refresh automatico ogni volta?

    Grazie :-)

  2. #2

  3. #3
    Non è ben chiara questa definizione
    Codice PHP:
    $current_page=(!$_GET['page'])?1[img]images/smilies/frown.gif[/img]int)$_GET['page']; 
    probabilmente anche perchè l'hai ricopiata male

  4. #4
    confermo



    questa è la versione corretta, scusate :-)

    $current_page=(!$_GET['page'])?1:
    (int)$_GET['page'];

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.