Szeretnék egy szimpla iframe-es lépegetős php galériát készíteni, de nem akarja léptetni. Mi a gond? Mi kéne még hozzá?
$img = 1;
$imgplus = $img ++;
echo '<a href="output/'.$imgplus.'.jpg" target="iframe"> Ez a kódrészlet.
Szerintem a PHP működésének megértése hiányzik hozzá.
Ugyanis a működés a következő. Tegyük fel, hogy a fenti kód az index.php-ban van.
1. az index.php a szerveren VÉGREHAJTÓDIK, azaz:
1.1 $img = 1;
1.2 $imgplus = $img++;
1.3 vagyis $imgplus == $img == 2
1.4 kiírja a linket az output/2.jpg-hez, iframe target-tel
2. az index.php KIMENETE eljut a böngészőbe
Ha kattintasz a linkre, betölti a 2.jpg-t az iframe-be, a kód szerint.
Semmi más nem történik.
Mi kéne: az iframe-ben levő dolog ne jpg legyen hanem egy PHP és oda kéne bevarázsolni a léptetést. Nézz utána a GET paramétereknek.
Hello, kedves válaszadó, igen, még az elején vagyok a php-nak, web-programozónak készülök, de ez egyelőre önszorgalom.
Saját célra próbálkozok. Arra gondoltam hogyha kattintok egy css-el széppé tett a href-re akkor az iframe-be tölti be a képet, mindig egyel nagyobbat. Targetelni iframe-t szoktam, mibe lehetne még? Táblázatot nem szeretem.
Ahogyan az előző is kifejtette maga a kód is eléggé vérzik, de ilyesmit nem php-val kellene megoldani, hanem mondjuk javascripttel.
Azon túl, hogy elég sok ingyenes javascript lightbox script elérhető a neten, én támogatom azt ha valaki szeretné megérteni a dolog mechanikáját.
Először is szükséged van egy olyan változóra, ami tárolja az aktuálisan megjelentetett kép id-jét. Erre jó lehet egy rejtett input mező is egy megfelelő id-vel, amit a javascript kiolvashat és léptethet. De javascript esetén még erre sincs szükség, hiszen az oldal nem töltődik újra, a javascript változót frissítésig használhatjuk.
Célszerű egy tömbben felépíteni a megjeleníteni kívánt képek elérést, esetleg nevét, megjegyzésszövegét, stb, és ezt publikálni a választott id alapján, nem pedig a képeket elnevezni 1.jpg 2.jpg ...
Ezután kell egy pozíció az oldalon, ahol a kép (és a többi adat) meg fog jelenni. Ez lehetőleg olyan felület/html elem legyen, aminek a méretét nem korlátozza a környezete, mert számítani kell rá, hogy a képek nem lesznek egyforma méretűek/orientációjúak. Erre célszerű meghatározni egy maximális méretet pl 800x800 pixel.
A legjobb egy div elemet használni konténernek. A legegyszerűbb, ha eleve beletesszük a kezdő képet, vagy egy transzparens képet, aminek az id-je alapján majd azonosítjuk a célt.
Létre kell még hozni a vezérlő gombokat (következő/előző kép) amelyekkel az eseményeket kiválthatjuk.
Oldalbetöltéskor:
Tehát létezik egy tömbbünk, ami a képinformációkat tárolja.
létezik egy azonosító változó ami az aktuális kép a tömbben elfoglalt sorszámát tárolja.
Kijeleztük az első képet, és a vezérlő gombokat.
A vezérlő gombok megnyomásakor lefuthatnak az előre megírt javascript függvények, amik:
Előre gomb esetén megvizsgáljuk, hogy van-e következő kép a tömbben, az aktuális kép nem az utolsó? Ha nem, akkor léptetjük a számlálót, a számláló alapján pedig lecseréljük a kép src attribútumát az új kép (tömbböl vett adat szerinti) elérésére. Ha ez az utolsó kép, akkor két dolgot tehetünk. A számlálót 0-ra állítjuk, és az elejéről kezdődik a sorozat, vagy nem történik semmi.
A Vissza gomb esetén nyilván azt vizsgáljuk a számláló nem áll-e a 0-n.
Nagyjából ez a szintaxis, persze ezt sok css-sel még ki kell igazítani, de ez alapján már el tudsz indulni.
A keretet a helyedben elfelejteném.
Ez szerintem elég jó lenne neked:
Még AJAX-os betöltésre is képes.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!