winnetu Napisano 15 Lutego 2006 Zgłoś Napisano 15 Lutego 2006 witam, jakiś czas temu admin przekazał pod moją opiekę dział galerii... chcę go troszeczkę zmodyfikować, jednak mi to nie wychodzi :( w chwili obecnej wygląda to tak, że po kliknięciu na miniaturkę skrypt otwiera obraz w normalnych rozmiarach i zamieszcza odnośnik do strony z miniaturkami... ja chcę aby po kliknięciu w miniaturkę skrypt otwierał duże foto i dawał możliwość przeglądania nastepnego i poprzedniego zdjecia... ale zabardzo nie wiem jak to zrobić :( (dopiero rozpoczynam naukę PHP :) wiem, ze są funkcje, stałe, zmienne, tablice itp, itd... jednak nie wiem za bardzo jak to zastosować tak aby działało to po 'mojemu' ) w tym momencie kod wygląda tak: <? if (($f=="")) {echo "brak zdjęcia";exit;} $obraz=$f.".jpg"; echo("<img src=\"$obraz\" width=400>"); ?> nazwa dużej wersji foto zawsze musi mieć postać foto1.jpg a miniaturka analogicznie foto1a.jpg w innym wypadku skrypt nie działa... bedę wdzieczny za jakiekolwiek wskazówki :) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
flatline Napisano 15 Lutego 2006 Zgłoś Napisano 15 Lutego 2006 (edytowane) Musisz przede wszytskim odpowiedzieć sobie na pytanie co Ci jest potrzebne do działania skryptu. Jak na mój gust minimum to znajomość nazwy poprzedniego i nastepnego zdjecia w galerii. Najprościej będzie Ci chyba utworzyć tablicę o strukturze =>'nazwa_foto' i po niej nawigować z zastrzerzeniami, że jak dojdzie do i=0 to nie można już się cofnąć, a jak dojdzie do ostatniego elementu to nie można już iść dalej (i ostatniego elementu to count($tablica)-1). Jakbyś mógł opisać bardziej szczegółowo jakie dane masz dostępne to bym Ci mógł coś konkretniejszego doradzić. Edytowane 15 Lutego 2006 przez flatline Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
winnetu Napisano 15 Lutego 2006 Zgłoś Napisano 15 Lutego 2006 (edytowane) Musisz przede wszytskim odpowiedzieć sobie na pytanie co Ci jest potrzebne do działania skryptu. Jak na mój gust minimum to znajomość nazwy poprzedniego i nastepnego zdjecia w galerii. Najprościej będzie Ci chyba utworzyć tablicę o strukturze =>'nazwa_foto' i po niej nawigować z zastrzerzeniami, że jak dojdzie do i=0 to nie można już się cofnąć, a jak dojdzie do ostatniego elementu to nie można już iść dalej (i ostatniego elementu to count($tablica)-1). Jakbyś mógł opisać bardziej szczegółowo jakie dane masz dostępne to bym Ci mógł coś konkretniejszego doradzić. dzieki za zainteresowanie :D tak jak podałem fotki są numerowane foto[index].jpg i foto[index]a.jpg przy czym [index]=numer fotki natomiast "a" oznacza miniaturę zdjęcia. Trzeba wziąć pod uwagę, że liczba zdjęć w galerii nie jest stała i waha sie na ogół od 8-20 (czasami 24 ale top rzadko :) ) więc np. coś takiego? <?$tab=array[1..20]if ($tab=0) {print("nie można dalej cofnąć");}else {$tab=count($tab)-1;print("nie ma następnego elementu do wyświetlenia");}?> czy o to chodziło?? a jak rozwiązać problem pokazywania poprzedniego i nastepnego foto? Edytowane 15 Lutego 2006 przez winnetu Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
flatline Napisano 15 Lutego 2006 Zgłoś Napisano 15 Lutego 2006 (edytowane) Hmmm, powiedzmy, że zorganizujesz to tak: 1. Wiesz ile jest fotek w danej galerii (np. $total = 15). 2. Wiesz jaką fotkę aktualnie wyświetlasz (np. $actual = 4) i liczby te są większe od 0. Te rzeczy możesz przekazać sobie np. w $_GET Więc, przy powyższych założeniach, można to rozwiązać nawet prościej: <?if ((intval($actual) > 0) && (intval($actual) < intval($total))){ $img = 'foto'.$actual.'.jpg'; if(($actual - 1)>0) { $prev = 'foto'.$actual-1.'.jpg'; echo '<a href="ścieżka_do_zdjec'.$prev.'">Poprzednie</a>'; } echo "<img src=\"$obraz\" width=400>"; if(($actual + 1) <= $total) { $next = 'foto'.$actual+1.'.jpg'; echo '<a href="ścieżka_do_zdjec'.$next.'">Następne</a>'; }}else { echo "brak zdjęcia";}?> Wszelkie byki niezamierzone, kod absolutnie niesprawdzony =] Możesz to potraktować jako ogólny zarys rozwiązania, który dostosujesz do swoich potrzeb... EDIT: Drobne poprawki w kodzie... Edytowane 15 Lutego 2006 przez flatline Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
winnetu Napisano 15 Lutego 2006 Zgłoś Napisano 15 Lutego 2006 Wszelkie byki niezamierzone, kod absolutnie niesprawdzony =] Możesz to potraktować jako ogólny zarys rozwiązania, który dostosujesz do swoich potrzeb... senkju wery macz :) będę próbował dalej coś z tym pokombinować ;) jak coś mi wyjdzie to się odezwę :D Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...