Forum Gry Hobby Sprzęt Rozmawiamy Archiwum Regulamin

Forum: Usprawnienia działania galerii na stronie internowej

22.07.2014 14:18
1
Gersiak
69
Konsul

Usprawnienia działania galerii na stronie internowej

Witam!
Mam pewien problem, mianowicie na stronie którą się opiekuje została stworzona galeria do której umieszczam zdjęcia. Niestety wada jest taka ,że zdjęć jest sporo ,a miniaturki wczytują się wszystkie na raz co powoduje to ,że przeglądanie ich jest strasznie powolne. Wpadłem więc na pomysł ,że schowam wszystkie zdjęcia i napiszę skrypt który będzie je otwierał po kliknięciu na tytuł kategorii miniaturki zdjęć (i będą się wczytywać tylko te widoczne ,a nie wszystkie na raz). Niestety to nie działa ponieważ chodź reszty zdjęć nie widać to i tak wczytują się wszystkie na raz (zobaczycie to wchodząc na stronę ,link poniżej). Bardzo prosił bym o pomoc w usprawnieniu tego. Sposób może być obojętny byle zdjęcia wczytywały się szybciej. Zamieszczę w linku poniżej kod przez który galeria jest stworzona. Z góry dzięki za pomoc!

Link do galerii : http://przedszkolekropelka2.pl/galeria
Link do kodu : http://www.wklej.org/id/1422522/

22.07.2014 14:27
2
odpowiedz
Tillig
17
Pretorianin

Zacznijmy od tego, że nie wczytują się miniaturki, tylko od razu pełnowymiarowe zdjęcia.
Proponowałbym zacząć od naprawienia tego problemu.

22.07.2014 14:32
3
odpowiedz
Gersiak
69
Konsul

@Tillig -> Jak to ? wczytują się najpierw miniaturki ,a dopiero po kliknięciu na nie pełne zdjęcia (jeżeli u Cb to nie działa to znaczy ,że musisz troszeczkę poczekać gdyż wszystko tak wolno się ładuje ,że nie nadąża się uruchomić) ;)

22.07.2014 14:39
Katane
4
odpowiedz
Katane
170
Useful_Idiot_

Chodzi o to, że obrazek, który masz wpisany w atrybucie "src" jest wczytywany od razu w całości - jeśli ma 500 kb, to tyle zostanie zaciągnięte, nawet jeżeli stylami zmniejszysz jego rozmiar. Profesjonalnie to się robi tak, że masz 2 grafiki - miniaturę w mniejszej rozdzielczości, która zajmuje np. 30kb, a dopiero po kliknięciu doładowujesz właściwy obrazek.

22.07.2014 14:42
5
odpowiedz
Tillig
17
Pretorianin

Nie wiem jak u Ciebie, ale ja u siebie potrafię rozpoznać ładowanie się miniatur oraz ładowanie pełnowymiarowych zdjęć.
1. Zdjęcie miniatury ładuje się niemal natychmiast przez mała wagę pliku (kila/kilkanaście max. KB). Zdjęcia na Twojej stronie ładują się etapami, czyli zdjęcie ładuje się od góry do dołu przez kilka/kilkanaście sekund.
2. Gdy najedziesz na zdjęcie i klikniesz PPM na "Pokaż zdjęcie", powinna pokazać się miniatura - pokazuje się pełnowymiarowy obraz.
3. Wejdź w źródło swojej strony:
Masz takie coś (jako przykład): <a href="/teatrzykraj/DSC01135.JPG" rel="gallery_2"><img alt="" src="/gallery/teatrzykraj/DSC01135.JPG"></a>

Rozumiem, że: <img alt="" src="/gallery/teatrzykraj/DSC01135.JPG">, powinien być miniaturą, ale plik waży 274 KB.
Myślisz, że to odpowiednia waga dla miniatury? Teraz wyobraź sobie, że na stronie masz 100 zdjęć.
274 KB x100? Prawie 30 MB.

22.07.2014 14:44
6
odpowiedz
Gersiak
69
Konsul

Dzięki wielkie za wytłumaczenie w czym leży błąd. Dodam ,że galerię tworzyła "profesjonalna firma" za nie małe pieniądze. Czy mógł by ktoś z was pokrótce wyjaśnić gdzie wrzucić taką miniaturę i jak to zmienić ?

22.07.2014 14:47
7
odpowiedz
Hakim
247
Senator

Musi Ci mulić obecnie, bo po wejściu na stronę ściąga się na dysk ponad 1600 elementów o łącznej wielkości kilkudziesięciu megabajtów.
Kilka osób online jednocześnie i zajedziesz całe łącze.

Jak wyżej miniaturki obowiązkowo i dodatkowo dałbym ajaksem ich otwieranie (i w konsekwencji ściąganie) dopiero jak ktoś kliknie w dane wydarzenie.

Miniatury tworzysz czymkolwiek, choćby i darmowym IrfanView. Obsługuje konwersję wsadową, więc pójdzie to wszystko automatem.
A potem już tylko dodanie całości do kodu strony.

22.07.2014 14:55
8
odpowiedz
Tillig
17
Pretorianin

Niestety ja nie będę potrafił pomóc co do kwestii zamontowania miniatur, bo trzeba byłoby się wgłębić w kod PHP tej strony.
Ja bym złożył reklamację w tej firmie (adres w stopce) i wymusił na nich poprawienie tego błędu.
Naprawdę aż przykro czytać, że ktoś za tą stronę wziął niemałe pieniądze.
Po przejrzeniu źródła strony stwierdzam, że jest średnio zoptymalizowana.
Nie myślałeś może o wykorzystaniu darmowego CMS, np. Joomla?

22.07.2014 14:57
9
odpowiedz
Gersiak
69
Konsul

Ok rozumiem dzięki ! miniaturki sobie zrobię na spokojnie ,ale co potem ? rozumiem ,że stworzę sobie na serwerze folder w którym je umieszczę. Potrzebował bym jedynie pomocy w przekształceniu kodu ,lub chociaż jakiejś wskazówki.

22.07.2014 15:04
10
odpowiedz
Gersiak
69
Konsul

@Tillig -> teraz ,gdy strona już stoi raczej nie chcę tworzyć nic nowego. Po za galerią wszystko śmiga okej. Chyba ,że jest szansa na stworzenie nowej ,jakiejś gotowej galerii lub coś w tym stylu ?

22.07.2014 15:41
11
odpowiedz
Tillig
17
Pretorianin

Z doświadczenia wydaje mi się, że szybciej będzie użyć nowego, gotowego szablonu z kodem PHP do galerii.
Darmowych kodów jest dziesiątki na necie: google -> "kod php do galerii".
Na modyfikację tego co jest teraz, możliwe, że trzeba będzie poświęcić za dużo czasu.
Warto jest wstawić kod, który automatycznie będzie tworzył miniatury w docelowym katalogu.
Tworzenie je ręcznie za każdym razem, gdy ktoś doda zdjęcie dla mnie jest bez sensowne.

Możesz spróbować tego: http://blog.piotrnalepa.pl/2010/01/16/phpmysqlajax-galeria-zdjec-ze-zmieniajacymi-sie-zdjeciami-upload-zdjec-na-serwer/
Opisane jest wszystko dokładnie jak to zrobić.
Problemem może być bezpieczeństwo tego kodu. Ma on już 4 lata i może mieć jakieś luki w bezpieczeństwie.

Zasugerowałem Ci jakiegoś darmowego CMS, bo zapewnia on na bieżąco wszelkie aktualizacje, co według mnie jest bardzo ważne. Do tego masz pełne wsparcie oraz mnóstwo darmowych dodatków, m.in. moduły galerii.
Ja na Joomla siedzę już od paru ładnych lat. Taką stronę jak ta, można zrobić w kilka godzin.

22.07.2014 16:43
12
odpowiedz
Gersiak
69
Konsul

Ok dzięki pobawię się może uda się to jakoś fajnie zmodyfikować :) przynajmniej teraz wiem w czym problem

Forum: Usprawnienia działania galerii na stronie internowej