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

    Paginazione immagini in cartella

    Cia a tutti... vi leggo da un sacco di tempo e spesso avete risolto i miei problemi...ma ora non riesco a trovare soluzione...

    veniamo al dunque:
    ho una cartelal con delle foto che vengono visualizzate in automatico:

    <?php
    $img_dir = "bird/";// Specificare il percorso della directory che contiene le immagini
    $handle = opendir($img_dir);// Utilizzo opendir per aprire la directory
    $files = readdir($handle);
    $tot_records = count(glob($img_dir . "*.jpg")) ; //conta quanti files ci sono nella cartella

    while ($files = readdir($handle))
    {// Esploro il contenuto della directory
    if ($files != "." && $files != ".." )
    {
    $patch=$img_dir.$files;
    $foto=getimagesize($patch); //cn getimagesize() verrà rest array contenente i val di larg e alt
    $larg=$foto[0]; // il primo elemento dell'array contiene la larghezza della foto;
    $alt=$foto[1]; // il secondo elemento dell'array contiene l'altezza dell'immagine;
    // si ipotizzi di voler ridimensionare l'immagine a 1/5 della sua dimensione originale;
    $larg=$larg/5;
    $alt=$alt/5;
    // per esser più precisi e passare un valore corretto al tag html img bisognerà eliminare i numeri decimali, quindi:
    $larg = number_format($larg, 0, ',', ' ');
    // infine passare alla visualizzazione del thumbnail o riquadro di anteprima
    echo "<a href='$patch' rel='shadowbox[bird];' title='$files'>";
    echo"[img]".$patch."[/img]";
    echo"</a>";
    }

    }

    ?>

    questo è lo script.

    ora : le foto vengono visualizzate, il problema è che vorrei venisse creata una nuov pagina dopo 15 foto...

    ma con tutti gli script non so come fare ...

    aiutatemi por favor che sto impazzendo da 1 mese...

    Grazie

    Marco

  2. #2
    Scusami tu usi glob() solo per contare quante immagini ci sono, ma glob() ti restituisce un array contenente il percorso di tutti i file, quindi perche' buttarlo via e usare un ciclo con readdir()? Usa direttamente l'array restituito da glob().

    Per quanto riguarda la paginazione il concetto e' identico a quello di qualunque guida: devi passare un parametro da una pagina all'altra che indichi quale porzione visualizzare, a seconda di questo valore mostri le immagini corrette.

    Esempio: chiamiamo $pagina questo valore, se $pagina vale 0 allora mostri le immagini contenute nell'array restituito da glob che abbiano indice da 0 a 14, se $pagina vale 1 mostri quelle da 15 a 29 e cosi' via.

    Il valore puoi passarlo da una pagina all'altra ad esempio tramite query string per recuperarlo dall'array $_GET.

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.