Quest: Galeria w PHP

Utwórz lub wygeneruj skrypt wyświetlający obrazy z tablicy w formie galerii. Prosta wersja galerii ma wyświetlać miniatury (3 w wierszu) wraz z opisem i kategorią, a po kliknięciu w miniaturę ma wyświetlać powiększony obraz wraz z opisem i kategorią. Ulepszona wersja ma dodatkowo po kliknięciu w kategorię wyświetlać galerię obrazów z tej kategorii. Poświęć czas na zrozumienie kodu i poeksperymentowanie z nim. Uprość go.

$photos = [
    ['img_id'=>1, 'img'=>'img/img1.jpg', 'opis'=>'A beautiful sunset.', 'category_id'=>1],
    ['img_id'=>2, 'img'=>'img/img2.jpg', 'opis'=>'A serene beach.', 'category_id' => 2],
    ['img_id'=>3, 'img'=>'img/img3.jpg', 'opis'=>'A blooming flower.', 'category_id' => 3],
    ['img_id'=>4, 'img'=>'img/img4.jpg', 'opis'=>'Snow-covered mountains.', 'category_id' => 1],
    ['img_id'=>5, 'img'=>'img/img5.jpg', 'opis'=>'A forest in autumn.', 'category_id' => 3],
    ['img_id'=>6, 'img'=>'img/img6.jpg', 'opis'=>'City skyline at night.', 'category_id' => 2],
    ['img_id'=>7, 'img'=>'img/img7.jpg', 'opis'=>'A waterfall flowing.', 'category_id' => 3],
    ['img_id'=>8, 'img'=>'img/img8.jpg', 'opis'=>'A boat on a calm lake.', 'category_id' => 1],
    ['img_id'=>9, 'img'=>'img/img9.jpg', 'opis'=>'A field of lavender.', 'category_id' => 2],
    ['img_id'=>10, 'img'=>'img/img10.jpg', 'opis'=>'A snowy forest.', 'category_id'=>1],
    ['img_id'=>11, 'img'=>'img/img11.jpg', 'opis'=>'Aerial view of coral.', 'category_id'=>3],
    ['img_id'=>12, 'img'=>'img/img12.jpg', 'opis'=>'Market square.', 'category_id' => 2],
];

$categories = [
    ['category_id'=>1, 'name'=>'Nature'],
    ['category_id'=>2, 'name'=>'Cityscapes'],
    ['category_id'=>3, 'name'=>'Wildlife'],
];

Dalszy etap to zintegrowanie galerii ze stroną z questa Prosta strona w PHP. Ten etap koniecznie zrób ręcznie. Galerię dodaj jak jedną z podstron w menu, tak by menu było widoczne zarówno na stronie kategorii jak i w widoku pojedynczego zdjęcia, ale tak, żeby nie była widoczna na wszystkich podstronach.

Dobrze byłoby rozdzielić kod na kilka plików:

  • dane.php – tablice z danymi
  • index.php główny plik strony
  • galeria.php – skrypt galerii
  • styl.css – arkusz styli

Przydatna będzie wtedy funkcja include() lub require().

Twój komentarz

Zapisz moje dane, adres e-mail i witrynę w przeglądarce aby wypełnić dane podczas pisania kolejnych komentarzy.