PHP skript pro generování galerie obrázků 1.
Jestli s internetovými stránkami pracujete častěji, zajisté jste se už setkali s automaticky generovanými galeriemi obrázků, ať už to byla pěkná auta, obrázky přírody nebo i jiných „objektů“. Tento článek má dva díly. V tom dnešním si popíšeme, jak vygenerovat HTML kód, který bude obsahovat tabulku s obrázky. Neřeší však úpravy obrázků, prostě je budete muset zmenšit a upravit jejich velikost v programech jako Paint Shop Pro, Photoshop apod. Ale pokud je tato činnost na vás příliš namáhavá (stejně tak jako pro mě,) bude se vám líbit pokračování tohoto miniseriálku, kde si uděláme skript, který veškeré problémy s velikostí obrázku vyřeší za nás.
Vraťme se ale na úplný začátek. S čím budeme pracovat? Aby náš skript fungoval, předpokládáme, že ve stejném adresáři, kde je umístěn skript, jsou i adresáře s galeriemi. V adresáři s galerií (tj. obrázky) je ještě adresář „small“, kde jsou zmenšené verze obrázků galerie, tzv. náhledy (thumbnaily). N8hledy mají stejný název jako jejich větší bráškové, ale před jejich jméno je ještě vloženi „small_“. Takže pokud máme například obrázek 01.gif, tak jeho zmenšenina se bude nazývat small_01.gif. Samozřejmě, všechna tato drobná nastavení je možné jednoduše ve skriptu změnit.
Skript, který bude umístěn v souboru funkce.php, budu uvádět po ucelených částech, které budu postupně vysvětlovat. Budete tedy muset jednotlivé části spojit dohromady a umístit je do zmiňovaného souboru funkce.php.
|
V této první části si nadefinujeme proměnné a načteme soubory v adresáři. $cesta je název adresáře, ve kterém jsou obrázky určité galerie. $cesta_male je adresář se zmenšenými obrázky. $strana je proměnná, určující číslo stránky, která se má zobrazit. $sirka_tabulky definuje samozřejmě šířku tabulky, buď v procentech nebo v pixelech. $pocetH a $pocetV udává kolik bude sloupců ($pocetH) a kolik bude řádků ($pocetV). OpenDir() otevře adresář, pak postupně pomocí ReadDir() načítáme jména souborů. Ještě než uložíme do pole $soubor název souboru, musíme si být jisti ,že neuložíme nějaký z adresářů, které v aktualním adresáři jsou. Poslední v této části je funkce Sort(), srovná nám názvy podle abecedy.
|
Předtím jsme si načetli jména adresářů, teď si je zpracujeme. Vypočítáme šířku sloupce, budeme ji uvádět v procentech, takže stačí vydělit 100 počtem sloupců. Dále vypočítáme číslo prvního obrázku, který budeme zobrazovat, uložíme jej do $obrazek_cislo. Nastupuje cyklus while(), ten zobrazí vlastní tabulku. Vidíme, že jsou v těle cyklu dvě podmínky, které kontrolují jestli počet sloupců a řádků nepřekročil limit. Pokud sloupec překročí svůj limit, nastavíme jeho hodnotu na 1 a začneme nový řádek ( $radka++; ). Pokud počet řádků překročí limit, ukončíme cyklus příkazem break;.
|
Poslední část skriptu zobrazí dolní navigační pruh s čísly stránky. Spočítáme $pocet_stran a cyklus for() nám je zobrazí. Podmínka zajišťuje, že se nám nevytvoří odkaz na stránku, na které se právě nacházíme.
Abychom vyzkoušeli funkčnost skriptu, vytvoříme soubor galerie.php:
|
No a máme to zasebou, ještě bych rád řekl že styl a parametry tabulky můžeme snadno měnit pomocí CSS kaskádových stylů, v tabulce je definován styl tabulkagalerie, takže můžete do hlavičky HTML přidat: <style> .tabulkagalerie { font-color: #0000FF } </style> apod.
V druhém pokračování tohoto článku si povíme, jak si udělat skript, který nám naši galerii upraví a ubere nám spousty práce se zmenšováním a přejmenováváním obrázků.
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
AI v programování: Jak používat GitHub Copilot (část 2)
19. února 2024 -
Praktické rady na zabezpečení redakčního systému WordPress
27. února 2023 -
Globální výpadek IT systémů: Může za to jediná aktualizace
19. července 2024
Nejnovější
-
Jaký monitor je nejlepší k novému Macu Mini?
25. listopadu 2024 -
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024