@a_pussycan
Начинающий веб-программист

Как и чем перебрать массив?

1. Создать галерею фотографий. Она должна состоять из одной страницы, на которой пользователь видит все картинки в уменьшенном виде. При клике на фотографию она должна открыться в браузере в новой вкладке. Размер картинок можно ограничивать с помощью свойства width.
2. *Строить фотогалерею, не указывая статичные ссылки к файлам, а просто передавая в функцию построения адрес папки с изображениями. Функция сама должна считать список файлов и построить фотогалерею со ссылками в ней.


Короче вообще не понимаю как реализовать, какой-то код написал, но он явно тут не канает.

<?
$url = 'gallery_img';
$images = function ($url) {
  $big = array_slice(scandir($url."/big/"), 2);
  $small = array_slice(scandir($url."/small/"), 2);
  $allImages = array ('big' => $big, 'small' => $small);
  foreach ($allImages as $a => $b) {
    if ($a == 'big') {
      $url1 = $a;
    }
    if ($a == 'small') {
      $url2 = $a;
    }
      foreach ($b as $c => $d) {
        if ($a == 'big') {
          $img1 = $d;
        } elseif ($a == 'small') {
          $img2 = $d;
        }
        echo "<a rel=\"gallery\" class=\"photo\" href=\"gallery_img/{$url1}/{$img1}\"><img src=\"gallery_img/{$url2}/{$img2}\" width=\"150\" height=\"100\" /></a>";

      }
  }




};
echo$images($url);

echo "<head>
  <title>Моя галерея</title>
  <link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\"/>
  <script type=\"text/javascript\" src=\"./scripts/jquery-1.4.3.min.js\"></script>
  <script type=\"text/javascript\" src=\"./scripts/fancybox/jquery.mousewheel-3.0.4.pack.js\"></script>
  <script type=\"text/javascript\" src=\"./scripts/fancybox/jquery.fancybox-1.3.4.pack.js\"></script>
  <link rel=\"stylesheet\" type=\"text/css\" href=\"./scripts/fancybox/jquery.fancybox-1.3.4.css\" media=\"screen\" />
  <script type=\"text/javascript\">
    $(document).ready(function(){
    $(\"a.photo\").fancybox({
    transitionIn: \"elastic\",
    transitionOut: \"elastic\",
    speedIn: 500,
    speedOut: 500,
    hideOnOverlayClick: false,
    titlePosition: \"over\"
    });	}); </script>

</head>

<body>
<div id=\"main\">
  <div class=\"post_title\"><h2>Моя галерея</h2></div>
  <div class=\"gallery\">
    {$images}
  </div>
</div>

</body>
</html>"
?>
  • Вопрос задан
  • 943 просмотра
Решения вопроса 1
DeyvHorni
@DeyvHorni
$dir = 'img/';
$images = scandir($dir);
for ($i = 0; $i < count($images); $i++) {
	if ($images[$i] != '.' && $images[$i] != '..') {
		echo '<a href="' . $dir . $images[$i] . '" target="_blank"><img src=' . $dir . $images[$i] . ' style="width: 200px;"></a>';
	}
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы