Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    88

    Paginazione dati estratti da tabella in base a un determinato step

    Dovrei mostrare nella parte alta di una pagina un numero di record pari a 5 che dovrebbero rappresentare i due step precedenti, i due successivi e quello attuale tipo breadcrumbs (vedi immagine). Questa sequenza dovrebbe aggiornarsi in base all'avanzamento, non ho bisogno che sia linkata, al massimo lo step corrente verrà identificato con un grassetto. Sono riuscito ad estrarre tutti i dati ma non so come fare per realizzare questa visualizzazione perziale che si aggiorna al variare dello step.
    codice:
     <?php
    
    $query = "SELECT nome_step FROM step ORDER BY num_step";
    $passaggi=mysql_query($query);
    $num=mysql_num_rows($passaggi);
      
      $i=0;
     while ($i < $num) {
         $nome_step=mysql_result($passaggi,$i,"nome_step");
            
     
         echo "<li><a>$nome_step</a></li>";
     
         $i++;
     }
     
     ?>

    Mi date una mano?

    Grazie
    Immagini allegate Immagini allegate

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    88
    Piano, piano... uno alla volta non tutti insieme...

  3. #3
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    beh, se conosci il numero dello step in cui ti trovi, fai una query dinamica che ti restituisca i risultati che ti servono

    SELECT nome_step
    FROM step
    WHERE num_step BETWEEN $step_attuale - 2 AND $step_attuale + 2
    ORDER BY num_step

    prova un po'

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    88
    Il nome dello step in cui mi trovo viene estratto da un'altra tabella:

    codice:
    $sqlquery = "SELECT * FROM componenti WHERE step=" . $_SESSION['step'];
                                                    $result = mysql_query($sqlquery);
                                                    $number = mysql_num_rows($result);
    
                                                    $i = 0; 
    (....................)
    come faccio a confrontare e combinare i risultati?

  5. #5
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    ma hai una correlazione tra nome dello step e numero?
    sarebbe utile per evitare di fare query e dover poi ciclare tutti i recordset per trovare il tuo dato

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    88
    Allora io ho due tabelle:

    la prima: idstep; num_step; nome_step

    la seconda: idcomp; nome_componente;...........; idstep

    intendi se le due tabelle sono messe in relazione attraverso il campo idstep?

  7. #7
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    non ho capito la struttura dei dati, ma se $_SESSION['step'] ti consente di ottenere il numero dello step (direttamente o tramite una query apposita) dovresti essere a posto usando una query tipo quella che ti ho scritto prima (che presuppone che i numeri degli step siano tutti consecutivi)

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    88
    Hai ragione, basta la query che hai scritto prima. Solo che io avevo mischiato i campi delle due tabelle poichè avevo dato nomi simili e mi ero confuso.

    Grazie ancora.

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.