Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 16 su 16
  1. #11
    ho corretto così e ora funziona:

    $start = ($_GET['pagina'] - 1) * $limit;

    é giusto come ho fatto?

    Grazie Michel
    PHP THE BEST

  2. #12
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    direi di si :-)

    ciao

  3. #13
    Ciao a tutti,

    ho un piccolo problema che non riesco a risolvere vedo di spiegarmi al meglio

    1. ho notato che i numeri dei link anche se ho solo un record me li fa vedere lo stesso, si puo fare in modo che se ho solo un record non mi dia tutte le pagine lo stesso?




    Codice PHP:
    $sql = "SELECT * FROM tbl_image";
    $query = mysql_query($sql);
    $pagine_tot = mysql_num_rows($query);
    $limit = 5;
    $pgto = ceil($pagine_tot/$limit);

    $pagine_totali            = $pgto; // queste devi ricavartele
    $pagina_attuale           = 1; // caso di default
    $pagine_da_mostrare       = 5; // ti consiglio di usare un numero dispari in modo da avere un numero pari di pagine
                                   // quella attuale
    $pagine_prima_e_dopo      = floor($pagine_da_mostrare/2);

    $prima_pagina             = 0;
    $ultima_pagina            = 0;


    if(isset($_GET['pagenum']) && is_numeric($_GET['pagenum']) && $_GET['pagenum'] > 0 && $_GET['pagenum'] <= $pagine_totali) {
      $pagina_attuale = $_GET['pagenum'];
    }
    $start = ($pagina_attuale * $limit);

    $sql_list_image = "SELECT * FROM tbl_image, tbl_folder WHERE tbl_folder.fold_id = tbl_image.fold_id ORDER BY img_name ASC LIMIT $start , $limit";
    $query_list_image = mysql_query($sql_list_image) or die (mysql_error());
    $rows = mysql_num_rows($query_list_image) or die (mysql_error());

                <?php 
              
    if($pagina_attuale <= $pagine_prima_e_dopo) {
      
    $prima_pagina 1;
      
    $ultima_pagina $prima_pagina + ($pagine_da_mostrare-1);
    } elseif(
    $pagina_attuale > ($pagine_totali-$pagine_prima_e_dopo)) {
      
    $ultima_pagina $pagine_totali;
      
    $prima_pagina $pagine_totali-($pagine_da_mostrare-1);
    } else {
      
    $prima_pagina $pagina_attuale $pagine_prima_e_dopo;
      
    $ultima_pagina $prima_pagina+($pagine_da_mostrare-1);
    }
    for(
    $i $prima_pagina$i <= ($ultima_pagina); $i++) {
        
    $link $_SERVER['PHP_SELF']."?page=".$_GET['page']."&pagenum=$i";
      echo 
    "[url='$link'] $i [/url]";
    }

                    
              
    ?>
    PHP THE BEST

  4. #14
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    if $pagine_totali > 1 {

    }

  5. #15
    Ok grazie questo funziona!!!

    Ora mi serve un'altra mano, se per esempio alla pagina 5 mi visualizza un solo record nel menu delle pagine mi fa vedere il link della pagina 6 che non ha niente da visualizzare perche già nella pagina 5 ha solo un record si puo risolvere in qualche modo facendo visualizzare solo la pagina 5 come ultima?
    PHP THE BEST

  6. #16
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    guarda, quel codice l'ho scritto di getto, ora non ricordo bene, ma sicuramente nel caso sei nella quinta pagina (che deve essere l'ultima da quanto dici) passi da questo if:

    codice:
    } elseif($pagina_attuale > ($pagine_totali-$pagine_prima_e_dopo)) {
      $ultima_pagina = $pagine_totali;
      $prima_pagina = $pagine_totali-($pagine_da_mostrare-1);

    Probabilmente dovrai giocare con $ultima_pagina, e in linea di massima dovrebbe bastare assegnare $pagine_totali-1

    ciao

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