Witam mam problem z galerią. Moja strona troszkę się rozrosła i chciałbym aby w galerii było kilka katalogów i w nim odpowiednie zdjęcia. Niestety nie potrafię przerobić mojego skryptu php aby możliwy był wybór katalogu ze zdjęciami... jest on ustawiony na stałe i to jest dla mnie problem. Macie może jakiś pomysł? Poniżej zamieszczam skrypty:
plik galeria.php
if(is_file('config.cfg.php')) //spradzamy czy mamy plig konfiguracyjny
require 'config.cfg.php';
else
die('Grak pliku konfiguracyjnego');
//sprawdzamy czy mamy katalog ze zdjeciami
if(!is_dir($_images_dir_)) die('Nie ma katologu ze zdjęciami');
?>
<html>
<head>
<title> Galeria </title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-2">
<link rel="stylesheet" href="global.css" type="text/css"/>
</head>
<body bgcolor="#E9E9D2">
<?
$time_start = microtime(true);
//liczymy zdjecia (jpg i gif)
$noimage = 0;
if ($dh = opendir($_images_dir_))
{
while (($f = readdir($dh)) !== false)
{
if((substr(strtolower($f),-3) == 'jpg') || (substr(strtolower($f),-3) == 'jpg'))
{
$imageinfo = getimagesize($_images_dir_.$f);
$width = $imageinfo[0];
$height = $imageinfo[1];
$size = round(filesize($_images_dir_.$f)/1024,1).' KB';
$noimage++;
$images[] = array('filename' => $f, 'width' => $width, 'height' => $height, 'size' => $size);
array_multisort($images, $_sort_, SORT_REGULAR);
}
}
closedir($dh);
}
if($noimage)
{
if($_GET["img"] != '')
{
if($images[$_GET["img"]][filename] != '')
{
if($_GET["img"])
{
$_no_ = ceil(($_GET["img"]+1)/$_no_pics_per_page_);
} else $_no_ = 1;
if($_GET["img"] == 0)
{
$side = '
<p>
<a class="galeria" href="'.$_SERVER["PHP_SELF"].'?no='.$_no_.'"> Góra </a>
<a class="galeria" href="'.$_SERVER["PHP_SELF"].'?img='.($_GET["img"]+1).'" > Następne </a>
</p>';
}
elseif($_GET["img"] == ($noimage-1))
{
$side = '
<p>
<a class="galeria" href="'.$_SERVER["PHP_SELF"].'?img='.($_GET["img"]-1).'"> Poprzednie </a>
<a class="galeria" href="'.$_SERVER["PHP_SELF"].'?no='.$_no_.'"> Góra </a>
</p>';
}
else $side = '
<p>
<a class="galeria" href="'.$_SERVER["PHP_SELF"].'?img='.($_GET["img"]-1).'"> Poprzednie </a>
<a class="galeria" href="'.$_SERVER["PHP_SELF"].'?no='.$_no_.'" > Góra </a>
<a class="galeria" href="'.$_SERVER["PHP_SELF"].'?img='.($_GET["img"]+1).'" > Następne </a>
</p>';
echo $side.'
<img src="picture.php?img='.$images[$_GET["img"]][filename].'
&show=full
" border="'.$_border_.'
" hspace="'.$_hspace_.'
" vspace="'.$_vspace_.'
" alt="'.$images[$_GET["img"]][filename].'
" title="'.$images[$_GET["img"]][filename].',
'.$images[$_GET["img"]][width].'x'.$images[$_GET["img"]][height].',
'.$images[$_GET["img"]][size].'"
>'.$side;
}
}
else
{
echo '<p>'.$_page_title_.'</p>';
//echo $noimage.'<br>'.print_r($images);
if($noimage > $_no_pics_per_page_)
{
$norows = ceil($_no_pics_per_page_/$_no_cols_);
}
else $norows = ceil($noimage/$_no_cols_);
$nopos = ceil($noimage/$_no_pics_per_page_);
//echo $nopos;
echo '<table border="0" align="center" cellpadding="0" cellspacing="0">';
if($_GET["no"] == "")
{
$no = 1;
}
else $no = $_GET["no"];
$index=abs($no-1)*$_no_pics_per_page_;
if(($noimage-$index)<$_no_pics_per_page_)
{
$norows= ceil(($noimage-$index)/$_no_cols_);
}
for($a = 1;$a<=$norows;$a++)
{
echo '<tr>';
for($b = 1;$b<=$_no_cols_;$b++)
{
if($images[$index][filename] != '')
{
echo '
<td width="'.(2*$_vspace_+$_width_min_).'" valign="top" align="center">
<a href="'.$_SERVER["PHP_SELF"].'?img='.$index.'" >
<img src="picture.php?img='.$images[$index][filename].'
" border="'.$_border_.'
" hspace="'.$_hspace_.'
" vspace="'.$_vspace_.'
" alt="'.$images[$index][filename].'
" title="'.$images[$index][filename].',
'.$images[$index][width].'x'.$images[$index][height].',
'.$images[$index][size].'">
</a>';
if($_filename_)
{
echo '<span>'.$images[$index][filename].'</span><br><br>';
}
echo '</td>';
$index++;
}
else echo '<td width="'.(2*$_vspace_+$_width_min_).'"> </td>';
}
echo '</tr>';
}
echo '</table>
';
}
}
else die('W galerii nie ma jeszcze żadnych zdjęć');
$time_end = microtime(true);
$time = $time_end - $time_start;
?>
</body>
</html>
plik config.cfg.php
<?
//================================================================================================================
//ubranka dla strony, mozliwy jeden z ponizszych wariantow
//gallery.css gallery2.css gallery3.css gallery4.css gallery5.css
//$a = rand(1,5);
//$_style_ = 'gallery1.css';
//$_style_ = 'gallery'.$a.'.css';
//nazwa strony
//$_page_title_
//katalog ze zdjeciami
$_images_dir_ = 'images/galeria_anglia/';
//szerokosc miniaturki zdjecia
$_width_min_ = 155 ;
// wysokosc miniaturki zdjecia
$_height_min_ = 115 ;
//jakosc prezentowanego zdjecia, im lepsza tym wiekszy rozmiar, przedział od 0-100
$_quality_ = 100;
//odstep od zdjecia w poziomie
$_vspace_ = 2 ;
//odstep od zdjecia w pionie
$_hspace_ = 2 ;
//obramowanie zdjecia w pikselach
$_border_ = 0;
//sortowanie ASC rosnaco, DESC malejaco
$_sort_ = SORT_ASC;
//szerokosc calego zdjecia
//pelny wymiar zdjec, ustaw zmienna na 0
$_width_max_ = 550 ;
//czy pokazywac nazwy plikow graficznych pod ikonkami ze zdjeciami jeśli TAK = 1, NIE = 0
$_filename_ = 0;
//ilosc kolumn w galerii
$_no_cols_ = 3;
// ilosc zdjec na stronie (= ilosc kolumn x ilosc wierszy)
$_no_pics_per_page_ = 100;
?>
oraz plik picture.php
<?
//spradzamy czy mamy plig konfiguracyjny
if(is_file('config.cfg.php'))
require 'config.cfg.php';
else
die('Grak pliku konfiguracyjnego');
if($_GET[img] == "")
exit;
if (!ereg('^[^./][^/]*$', $_GET[img]))
exit;
$_image_ = $_images_dir_.$_GET[img];
$new_w = $_width_min_;
$imagedata = getimagesize($_image_);
// echo $_image_;
if(!$imagedata[0])
exit();
$new_h = (int)($imagedata[1]*($new_w/$imagedata[0]));
if(($_height_min_) AND ($new_h > $_height_min_))
{
$new_h = $_height_min_;
$new_w = (int)($imagedata[0]*($new_h/$imagedata[1]));
}
if($_GET["show"] == "full")
{
if($_width_max_)
{
if($imagedata[0]<$_width_max_)
{
$new_w = $imagedata[0];
$new_h = $imagedata[1];
}
else
{
$new_w = $_width_max_;
$new_h = (int)($imagedata[1]*($new_w/$imagedata[0]));
}
}
else
{
$new_w = $imagedata[0];
$new_h = $imagedata[1];
}
}
if(strtolower(substr($_GET[img],-3)) == "jpg")
{
header("Content-type: image/jpg");
$dst_img=ImageCreate($new_w,$new_h);
$src_img=ImageCreateFromJpeg($_image_);
$dst_img = imagecreatetruecolor($new_w, $new_h);
imagecopyresampled($dst_img,$src_img,0,0,0,0,$new_w,$new_h,ImageSX($src_img),ImageSY($src_img));
$img = Imagejpeg($dst_img,'', $_quality_);
}
if(substr($_GET[img],-3) == "gif")
{
header("Content-type: image/gif");
$dst_img=ImageCreate($new_w,$new_h);
$src_img=ImageCreateFromGif($_image_);
ImagePaletteCopy($dst_img,$src_img);
ImageCopyResized($dst_img,$src_img,0,0,0,0,$new_w,$new_h,ImageSX($src_img),ImageSY($src_img));
$img = Imagegif($dst_img,'', $_quality_);
}
?>
Dziękuję bardzo za pomoc. Wiem że jest to dosyć łatwe... ale niestety moja wiedza i obeznanie z php jest znikome... Dziękuję serdeczenie