Кто-то попросил меня создать галерею изображений PHP, которая будет считывать изображения из каталога, а затем создавать эскизы для галереи. Существует один каталог с thumnails и один каталог с полноразмерными изображениями.
Я читаю имена файлов из каталога / thumb / и вставляю каждое имя файла в качестве значения в thumbArray. Оттуда я выводю значения в миниатюре src (<img src="<?php echo $thumbArray[$i]; ?>" />
), где $ i - просто счетчик. Таким образом, миниатюрные изображения создаются из массива, но когда вы нажимаете на миниатюру, он запрашивает? Имя файла в URL. Используя $ _SERVER ['QUERY_STRING'], я затем прочитал указанную строку запроса и вставил запрос (имя файла) в большой <img src"<?php echo $_SERVER['QUERY_STRING']; ?>" />
. Это ограничено, хотя. Как теперь я не могу читать массив, как опорную точку, так и больше не могу указывать вперед или назад в массиве.
Теперь я понимаю больше?
Пожалуйста, помогите ...
<?php
$i = 0;
/* Large file name and thumbnail file name must match */
/* Large image size = 480px x 300px */
echo '<img class="frameImg" src="images/large/'.$_SERVER['QUERY_STRING'].'" />';
?>
<p id="prevNext"><a href="#"><< Prev </a> || <a href="#"> Next >></a></p>
</div>
<div id="thumbs">
<ul>
<?php
/* Must change $dir to the full path of directory all the way from root /home/user/domain/images/thumb */
$dir = "*************************";
$dh = opendir($dir);
/* Thumbnail file name and large file name must match */
$thumbArray = array();
while (($file = readdir($dh)) !== false) {
if ($file != "." && $file != "..") {
$thumbArray[$i]=$file;
echo '<li id="'.$i.'"><a href="?'.$thumbArray[$i].'"><img src="images/thumb/'.$thumbArray[$i].'" alt="Alt for '.$thumbArray[$i].'" /></a></li>';
$i++;
}
}
closedir($dh);
?>