Jump to content

Archived

This topic is now archived and is closed to further replies.

rtswimmer

Dynamic gallery

Recommended Posts

Ive got an array of files, which are used to create thumbnails.
I only want 12 thumbnails on each page so ive done this:
[code]  $default_dir = "./products/corporate_signs/gallery/images";
    $height = 50;
    $x = 0;   
    $no = 0;  //counts number of files
    $fpp = 12; // files per page
    $thumb = array();
                   
    if(!($dp = opendir($default_dir))) die("Cannot open $dir");
    while($file = readdir($dp)) {
        if($file != '.' && $file != '..' && stristr($file,"jpg")){ $thumbs[$no] = $file; $no++;    }
    }closedir($dp);
    $pages = ceil($no / $fpp); // Sets Page numbers

            echo"<table border=\"0\" cellpadding=\"0\" cellspacing=\"10\">\n";
            switch($id){
                case"1" :
                    for($i=0; $i<12; $i++){
                        if ($x == 0) { echo"\t<tr>\n"; }    $x++;
                        if ($i < $no){ echo"\t\t<td height=\"$height\"><a href=\"?id=1&?pic=$i\"><img src=\"./gen.php?$default_dir/$thumbs[$i]\" border=\"0\"></a></td>\n";}       
                        if ($x == 3){ echo"\t</tr>\n"; $x = 0; }
                    }break;
                case"2" :
                    for($i=12; $i<24; $i++){
                        if ($x == 0) { echo"\t<tr>\n"; }    $x++;
                        if ($i < $no){ echo"\t\t<td height=\"$height\"><a href=\"?id=2&?pic=$i\"><img src=\"./gen.php?$default_dir/$thumbs[$i]\" border=\"0\"></a></td>\n";}       
                        if ($x == 3){ echo"\t</tr>\n"; $x = 0; }
                    }break;
                case"3" :
                    for($i=24; $i<36; $i++){
                        if ($x == 0) { echo"\t<tr>\n"; }    $x++;
                        if ($i < $no){ echo"\t\t<td height=\"$height\"><a href=\"?id=3&?pic=$i\"><img src=\"./gen.php?$default_dir/$thumbs[$i]\" border=\"0\"></a></td>\n";}       
                        if ($x == 3){ echo"\t</tr>\n"; $x = 0; }
                    }break;
                case"4" :
                    for($i=36; $i<48; $i++){
                        if ($x == 0) { echo"\t<tr>\n"; }    $x++;
                        if ($i < $no){ echo"\t\t<td height=\"$height\"><a href=\"?id=4&?pic=$i\"><img src=\"./gen.php?$default_dir/$thumbs[$i]\" border=\"0\"></a></td>\n";}       
                        if ($x == 3){ echo"\t</tr>\n"; $x = 0; }
                    }break;
                case"5" :
                    for($i=48; $i<60; $i++){
                        if ($x == 0) { echo"\t<tr>\n"; }    $x++;
                        if ($i < $no){ echo"\t\t<td height=\"$height\"><a href=\"?id=5&?pic=$i\"><img src=\"./gen.php?$default_dir/$thumbs[$i]\" border=\"0\"></a></td>\n";}       
                        if ($x == 3){ echo"\t</tr>\n"; $x = 0; }
                    }break;
                case"6" :
                    for($i=60; $i<72; $i++){
                        if ($x == 0) { echo"\t<tr>\n"; }    $x++;
                        if ($i < $no){ echo"\t\t<td height=\"$height\"><a href=\"?id=6&?pic=$i\"><img src=\"./gen.php?$default_dir/$thumbs[$i]\" border=\"0\"></a></td>\n";}       
                        if ($x == 3){ echo"\t</tr>\n"; $x = 0; }
                    }break;
                case"7" :
                    for($i=72; $i<84; $i++){
                        if ($x == 0) { echo"\t<tr>\n"; }    $x++;
                        if ($i < $no){ echo"\t\t<td height=\"$height\"><a href=\"?id=6&?pic=$i\"><img src=\"./gen.php?$default_dir/$thumbs[$i]\" border=\"0\"></a></td>\n";}       
                        if ($x == 3){ echo"\t</tr>\n"; $x = 0; }
                    }break;
                case"8" :
                    for($i=84; $i<96; $i++){
                        if ($x == 0) { echo"\t<tr>\n"; }    $x++;
                        if ($i < $no){ echo"\t\t<td height=\"$height\"><a href=\"?id=6&?pic=$i\"><img src=\"./gen.php?$default_dir/$thumbs[$i]\" border=\"0\"></a></td>\n";}       
                        if ($x == 3){ echo"\t</tr>\n"; $x = 0; }
                    }break;
                default :
                    header("Location: find.php?id=1");
            }echo"</table>";
            for($i=1; $i<=$pages; $i++){ echo"<a href=\"find.php?id=$i\">$i<a>"; }//Outputs Page Links [/code]
(I know its not very tidy or efficient)
But as you can see im only limited to having 96 images, unless i add more case statements.

Also i need help on the main images.. when i click the thumbnail i want the full image shown on the page next to the list of thumbnails.
I cant seem to get it to work tho
[code] switch($pic){
        case"1" :
            echo "<img src=\"$default_dir/$thumbs[1]\" border=\"0\">"; break;
        case"2" :   
            echo "<img src=\"$default_dir/$thumbs[2]\" border=\"0\">"; break;
        default :
            echo "Default"; [/code]
Like before tho i need the case statement to be dynamic so it doesnt matter how many images there are.

Hope that makes sence. Can anyone help me?
Cheers RTSwimmer

Share this post


Link to post
Share on other sites
You might want to look at this site's [url=http://www.phpfreaks.com/tutorial_cat/25/Page-Number--Pagination.php]pagination tutorials[/url] :)

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.