Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117

    Dividere i risultati del record in più pagine!

    Ragazzi ci sto ragionando un po su ma non riesco a concludere il ragionamento!

    Io pesco una botta di records da un DB Mysql con PHP. Li stampo con un ciclo while

    per l'esatezza faccio:

    Codice PHP:
    while($mieiDati=mysql_fetch_array($mieiRisultatiDellaQuery)){
    echo 
    $mieiDati['mioCampoNelDb'];

    Il problema è che sono tantissimi! xD

    Come faccio a dividerli per pagine? tipo...50 per pagina o giù di li in modo che mi visualizzi i numeretti delle pagine tipo link (o tipo combobox..)...insomma come si vede spesso in giro!

    thanks!

  2. #2
    Utente di HTML.it L'avatar di Andy_87
    Registrato dal
    Jun 2010
    Messaggi
    323
    Devi impostare il limit nella query di estrazione, nel tuo caso LIMIT 50
    "Se non riuscirò a piegare gli dei del cielo, smuoverò le potenze dell'inferno"
    S. Freud

  3. #3
    Utente di HTML.it L'avatar di Andy_87
    Registrato dal
    Jun 2010
    Messaggi
    323
    Gurda ho trovato questo in internet, dovrebbe essere abbastanzaq chiaro
    Codice PHP:
    <?
    // Creo una variabile dove imposto il numero di record 
    // da mostrare in ogni pagina
    $x_pag 5;

    // Recupero il numero di pagina corrente.
    // Generalmente si utilizza una querystring
    $pag $_GET['pag'];

    // Controllo se $pag è valorizzato...
    // ...in caso contrario gli assegno valore 1
    if (!$pag$pag 1

    // Mi connetto al database
    $conn mysql_connect("localhost","utente","password");
    mysql_select_db("nome_db"$conn);

    // Uso mysql_num_rows per contare le righe presenti
    // all'interno della tabella agenda
    $all_rows mysql_num_rows(mysql_query("SELECT id FROM agenda"));

    // Tramite una semplice operazione matematica definisco
    // il numero totale di pagine
    $all_pages ceil($all_rows $x_pag);

    // Calcolo da quale record iniziare
    $first = ($pag 1) * $x_pag;

    // Recupero i record per la pagina corrente...
    // utilizzando LIMIT per partire da $first e contare fino a $x_pag
    $rs mysql_query("SELECT * FROM agenda LIMIT $first$x_pag");
    $nr mysql_num_rows($rs);
    if (
    $nr != 0){
      for(
    $x 0$x $nr$x++){
        
    $row mysql_fetch_assoc($rs);
        echo 
    "<table><tr>";
        echo 
    "<td>" $row['id'] . "</td>";
        echo 
    "<td>" $row['nome'] . "</td>";
        echo 
    "<td>" $row['telefono'] . "</td>";
        echo 
    "</tr></table>";
      }
    }else{
      echo 
    "Nessun record trovato!";
    }

    // Se le pagine totali sono più di 1...
    // stampo i link per andare avanti e indietro tra le diverse pagine!
    if ($all_pages 1){
      if (
    $pag 1){
        echo 
    "<a href=\"" $_SERVER['PHP_SELF'] . "?pag=" $pag "\">";
        echo 
    "Pagina Indietro</a>";
      } 
      if (
    $all_pages $pag){
        echo 
    "<a href=\"" $_SERVER['PHP_SELF'] . "?pag=" $pag "\">";
        echo 
    "Pagina Avanti</a>";
      } 
    }

    // Chiudo la connessione ad DB
    mysql_close($conn);
    ?>
    "Se non riuscirò a piegare gli dei del cielo, smuoverò le potenze dell'inferno"
    S. Freud

  4. #4
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    uuuuh! *___*

    Si si è chiarissimo! Adesso vedo di usarlo nella mia pagina!

    Grazieeee davveroooo!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.