Scritta al volo... modificala secondo le tue esigenze... tra un po torno, se hai bisogno d'ulteriore aiuto chiedi pure

Codice PHP:
    $images  glob('*.jpg');
    
$nImages count($images);
    
$xPagina 16;
    
$nPagine ceil($nImages/$xPagina);
    
$page    1;
        
    if (isset(
$_GET['page']))
    {
        
$page $_GET['page'] <= || !is_numeric($_GET['page']) ? $_GET['page'];
        
$page $nPagine $page $nPagine $page;
    }

    
$out '<ul>';
    
    foreach (
array_slice($images, ($xPagina $page) - $xPagina$xPagina) as $image)
    {
        
$out .= sprintf('[*][url="#"]%s[/url]'$image);
    }

    
$out.= '[/list]';
        
    for (
$i 0$i $nPagine$i++)
    {
        if (
$page == $i 1)
        {
            
$out .= sprintf('[url="%s?page=%d"][b]%d[/b][/url] '$_SERVER['PHP_SELF'], $i+1$i+1);
        }
        else
        {
            
$out.= sprintf('[url="%s?page=%d"]%d[/url] '$_SERVER['PHP_SELF'], $i+1$i+1);
        }
    }
    
    echo 
$out