<?php ?> <?php // funkcja pokazuje katalogi function show_img_folders() { { if($img_dir!='.' && $img_dir!='..') } } // funkcja pobiera obrazki z katalogu function get_images($dir) { // tablica z roszerzeniami ktore bedzie obslugiwac nasza galeria // ladujemy obrazki { if($image != '.' && $image != '..') { $images[] = $image; } } return $images; } { { $dir = $_GET['dir'].'/'; // katalog z fotkami $images = get_images($dir); // pobieramy do zmiennej nazwy obrazkow $col = 4; // ilosc kolumn obrazkow // sprawdzamy czy tablica zawiera jakies nazwy obrazkow // wyswietlamy wszystko echo '<table align="center" style="border: 1px solid #000000"> <tr><td colspan="'.$col.'"></td><tr>'; foreach($images as $img) { echo '<td align="center"><table><tr><td valign="top" align="center"><a href="'.$dir.$img.'" target="_blank"><img src="graph.php?img_name='.$dir.$img.'" border="0"></a></td></tr><tr><td align="center"></td></tr></table>'; $i++; if($i==$col) // jesli $i = liczbie kolumn, tworzymy nowy wiersz { $i=0; } } } } else show_img_folders(); // pokazujemy katalogi ?>
PLIK graph.php
<?php // File and new size $filename = $_GET['img_name']; $percent = 0.15; // Content type // Get new sizes $newwidth = $width * $percent; $newheight = $height * $percent; // Load $source = imagecreatefromjpeg($filename); $thumb = imagecreatetruecolor($newwidth, $newheight); // Resize imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); // Output imagejpeg($thumb); ?>
Cześć powyższy skrypt czyta foldery ze zdjęciami, po wejściu wyświetla miniatury, niestety są one tworzone w locie. Czytałem, że przy dużej ilości zdjęć galeria obciąża bardzo serwer i mam taką prośbę odnośnie tego, czy mógłby ktoś przerobić ten skrypt aby zapisywał miniatury do podfolderu images z przedroskiem th_ i wyświetlał je.
Do tej pory udało mi się zapisać miniatury do folderu images z przedrostkiem, nie wiem czy to jest najlepszy sposób, na inny nie wpadłem, jeżeli macie jakieś propozycje to bardzo proszę. Natomiast nie mam pojęcia jak linkom przypisać miniatury ;/
PLIK graph.php
<?php // File and new size $filename = $_GET['img_name']; $percent = 0.15; // Content type // Get new sizes $newwidth = $width * $percent; $newheight = $height * $percent; // Load $source = imagecreatefromjpeg($filename); $thumb = imagecreatetruecolor($newwidth, $newheight); // Resize imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); // Output $prefix = 'images/th_images/'.'th_'.$file[1]; imagejpeg($thumb, $prefix, 85); ?>
nikt nie ma pomysłu?